Tutorials › Competing Risks and Multi-State Models › A Worked Longitudinal Disease-Progression Analysis

Interval Censoring and Panel Data · Tutorial 532 of 699

A Worked Longitudinal Disease-Progression Analysis

Work through a complete panel-observed disease-progression analysis, from visit histories and likelihood fitting to multi-visit state-occupation predictions.

Advanced 12 min read

What You'll Learn

  • Encode longitudinal visits as ordered state histories and summarize observed transitions.
  • Construct the likelihood for a discrete-time, progressive three-state model.
  • Estimate transition probabilities by maximizing the panel-data likelihood.
  • Predict state-occupation probabilities over multiple visit intervals.
  • Identify assumptions, diagnostics, and limitations of the analysis.

From Visit Histories to a Progression Model

A panel study records disease status at scheduled visits, not necessarily the times when a person changes state. A participant recorded as healthy at one visit and diseased at the next is known to have changed status during that interval, but the exact onset time is not observed. A useful worked analysis must therefore keep the observed visit history distinct from the underlying disease process.

Consider a hypothetical cohort followed at annual visits. We use three states: healthy (\(H\)), diseased (\(D\)), and dead (\(X\)). The progression assumption is that a person cannot recover from \(D\) to \(H\), and death is absorbing. The model below is discrete-time: it describes the probability of each state at the next annual visit, conditional on the state at the current visit. It does not assert that a transition happened precisely at a visit.

Model: At each one-year step, a participant's state follows a time-homogeneous Markov chain with states \(H,D,X\). The transition matrix, with rows denoting the current state and columns the next state in the order \(H,D,X\), is $$ P= \begin{pmatrix} p_{HH} & p_{HD} & p_{HX}\\ 0 & p_{DD} & p_{DX}\\ 0 & 0 & 1 \end{pmatrix}. $$ Each entry is a conditional one-year transition probability, each row sums to one, and all entries are nonnegative. The Markov assumption means that, conditional on the current state, the next-visit state is independent of earlier states. Time homogeneity means these one-year probabilities do not vary across follow-up years.

In this model, \(p_{HX}\) is an effective one-year probability of being observed dead at the next visit when currently healthy. It does not establish that death occurred without an intervening disease state; intermediate changes can be unobserved between visits. Similarly, \(p_{HD}\) summarizes endpoint status over a year, not the precise onset time.

Worked Example: Encoding Histories and Counting Transitions

Worked Example: Encoding Histories and Counting Transitions

Suppose five hypothetical participants have the following annual visit histories, with entries at years 0, 1, and 2:

ParticipantYear 0Year 1Year 2
AHHD
BHDD
CHXX
DDDX
EDXX

Each adjacent pair contributes one transition. Participant A contributes \(H\to H\) and \(H\to D\); B contributes \(H\to D\) and \(D\to D\); C contributes \(H\to X\) and \(X\to X\); D contributes \(D\to D\) and \(D\to X\); and E contributes \(D\to X\) and \(X\to X\). Across all ten annual intervals, the observed counts are \(H\to H:1\), \(H\to D:2\), \(H\to X:1\), \(D\to D:2\), \(D\to X:2\), and \(X\to X:2\).

These are endpoint transitions. The two-year history \(H,H,D\) tells us that the participant was healthy at year 1 and diseased at year 2; it does not identify the disease-onset time within the second year. The absorbing-death assumption is consistent with the observed \(X\to X\) records.

Likelihood and Estimation

For a fully observed annual history \(z_{i0},z_{i1},\ldots,z_{iK}\), its likelihood contribution is the product of the transition probabilities along the observed path:

$$ L_i(P)=\prod_{k=1}^{K}p_{z_{i,k-1},z_{ik}}. $$

For independent participants, multiply these contributions. Grouping like transitions gives the log-likelihood

$$ \ell(P)= n_{HH}\log(p_{HH})+ n_{HD}\log(p_{HD})+ n_{HX}\log(p_{HX})+ n_{DD}\log(p_{DD})+ n_{DX}\log(p_{DX}), $$

where \(n_{ab}\) is the number of observed annual intervals from state \(a\) to state \(b\). The \(X\to X\) contribution is \(\log(1)=0\), so it supplies no information about the nonabsorbing rows. Each row's probabilities are estimated separately by the observed proportions in that row, provided there is at least one observed interval starting in that state. This is the multinomial likelihood result: for a row with counts \(n_1,\ldots,n_J\) and probabilities \(q_1,\ldots,q_J\), maximizing \(\sum_j n_j\log(q_j)\) subject to \(\sum_jq_j=1\) gives \(\hat q_j=n_j/\sum_jn_j\).

Assumptions for this likelihood: Participants are independent; state is correctly classified at each recorded visit; the modeled transition probabilities apply to the visit intervals being analyzed; and the visit process and missingness do not selectively omit transitions in a way that changes the modeled likelihood. The Markov and time-homogeneity assumptions are substantive, not consequences of the data format. If the interval lengths differ, a common one-step matrix cannot automatically be applied to every interval.

Worked Example: Fitting the Transition Matrix

For a larger hypothetical cohort, suppose the observed annual transition counts are \(H\to H:12\), \(H\to D:6\), \(H\to X:2\), \(D\to D:9\), and \(D\to X:6\). There are 20 intervals beginning in \(H\) and 15 beginning in \(D\). The likelihood is

$$ L(P)=p_{HH}^{12}p_{HD}^{6}p_{HX}^{2}p_{DD}^{9}p_{DX}^{6}. $$

For the \(H\) row, the total is \(12+6+2=20\). Maximizing that row's likelihood subject to \(p_{HH}+p_{HD}+p_{HX}=1\) gives

$$ \hat p_{HH}=\frac{12}{20}=0.600,\qquad \hat p_{HD}=\frac{6}{20}=0.300,\qquad \hat p_{HX}=\frac{2}{20}=0.100. $$

For the \(D\) row, the total is \(9+6=15\), so

$$ \hat p_{DD}=\frac{9}{15}=0.600,\qquad \hat p_{DX}=\frac{6}{15}=0.400. $$

The fitted matrix is therefore

$$ \hat P= \begin{pmatrix} 0.600 & 0.300 & 0.100\\ 0 & 0.600 & 0.400\\ 0 & 0 & 1 \end{pmatrix}. $$

Each row sums to one and all entries are between zero and one, as required. These estimates describe conditional proportions of observed one-year outcomes in this hypothetical cohort. They do not by themselves establish causal effects or identify within-year transition times.

Prediction of State Occupation

For a participant known to be in state \(a\) at a visit, the row of \(P\) gives the next-visit state probabilities. After two annual steps, the probabilities are in the corresponding row of \(P^2\); more generally, \(P^m\) gives the \(m\)-step probabilities under the same Markov and time-homogeneity assumptions. These are state-occupation probabilities: probabilities of occupying each state at a specified future visit.

Worked Example: Two-Year State-Occupation Prediction

Use the fitted matrix above to predict the state at year 2 for a hypothetical participant known to be healthy at year 0. Starting from \(H\), the probability of being healthy at year 2 is

$$ P(H\text{ at year 2}\mid H\text{ at year 0}) =\hat p_{HH}\hat p_{HH} =0.600(0.600)=0.360. $$

To be diseased at year 2, the participant can follow either \(H\to H\to D\) or \(H\to D\to D\). Thus

$$ P(D\text{ at year 2}\mid H\text{ at year 0}) =(0.600)(0.300)+(0.300)(0.600)=0.360. $$

The remaining probability is death by year 2. It can arise through \(H\to H\to X\), \(H\to D\to X\), or \(H\to X\to X\):

$$ P(X\text{ at year 2}\mid H\text{ at year 0}) =(0.600)(0.100)+(0.300)(0.400)+(0.100)(1)=0.280. $$

The probabilities sum to \(0.360+0.360+0.280=1.000\). Under the fitted model, a participant healthy at baseline has a 0.360 probability of being diseased at year 2, for example. This is a model-based probability for the specified future visit, not a probability that disease onset occurred at year 2.

Incomplete Histories, Diagnostics, and Alternatives

A complete annual history contributes one factor for every observed adjacent pair. If an intermediate visit is missing but the states at the visits on either side are observed, the transition over the gap must be represented appropriately. For example, under this model, if the gap is exactly two annual steps and the participant is \(H\) at the first visit and \(D\) at the next recorded visit, the contribution is \((P^2)_{HD}\), not a single one-year probability \(p_{HD}\). With the fitted matrix above, that contribution is

$$ (\hat P^2)_{HD} =(0.600)(0.300)+(0.300)(0.600)=0.360. $$

This calculation sums over the unobserved intermediate state. In contrast, if the intermediate visit is observed as \(H\), the two-interval contribution is \(p_{HH}p_{HD}=0.180\). The observed history therefore contains more information than the endpoints alone.

Several checks help reveal a poor fit or a mis-specified analysis:

  • Verify that transition counts use intervals, not participants, and that every interval is assigned to the row for its starting state.
  • Check that fitted rows sum to one and that impossible transitions under the model have not been silently entered as allowed transitions.
  • Compare observed and model-predicted transition frequencies across years, baseline groups, or visit schedules. Systematic differences suggest time variation or omitted heterogeneity.
  • Inspect whether participants with missing visits or irregular attendance differ in observed risk. If observation depends on unobserved disease status, the simple likelihood may be biased.
  • Check support: if a state has no observed departures or no records beginning in that state, some transition probabilities cannot be estimated from these counts in the usual way.

The discrete-time model has the advantage of directly matching visit-to-visit data and yielding transparent multinomial estimates. A continuous-time Markov model instead represents transition intensities and can accommodate different elapsed times through a transition matrix that depends on the interval length. It imposes a more detailed within-interval process and may require numerical likelihood fitting. If intervals are not all one year, or if exact timing and intensity interpretation are central, that is often the more suitable framework. Neither formulation automatically resolves informative visit timing, state misclassification, or dependence on unmeasured history.

Why the Modeling Choices Matter

A panel record is not a continuously observed path. Treating every change as if it occurred at the visit date invents timing information; treating a two-year gap as one one-year transition uses the wrong probability. In addition, the Markov assumption can fail if, for example, two participants currently classified as diseased have different future risks because of disease duration or prior history. Time-homogeneity can fail if risk changes with age, calendar time, or treatment. Such concerns motivate richer models, but they should be addressed by a model justified for the data rather than by interpreting a simple transition matrix more broadly than it permits.

  • Wrong reasoning: “The participant was healthy at year 0 and diseased at year 1, so disease began at year 1.”
  • Correction: The observed data locate the change only within the interval between visits. The discrete-time transition probability concerns endpoint states, not an exact event time.
  • Wrong reasoning: “If a visit is skipped, use the one-year transition probability between the two recorded states.”
  • Correction: For a two-year gap under this annual model, use the appropriate entry of \(P^2\), which accounts for possible intermediate states.
Key takeaway: Encode what was actually observed, construct likelihood contributions for the elapsed visit steps, and interpret fitted probabilities at those same time points. State-occupation predictions inherit the assumptions of the transition model used to produce them.

Check Your Understanding

Answer the questions using the fitted matrix in the examples. Short solutions are provided after the questions.

  1. For a one-year interval beginning in \(H\), what is the fitted probability of being observed in \(X\) at the next visit?
  2. Calculate the two-year probability of remaining in \(D\), conditional on being in \(D\) now.
  3. Why is the two-year probability of \(H\to D\) not simply \(\hat p_{HD}\)?
  4. State one reason the Markov assumption might fail in a disease-progression study.

Solutions. (1) It is \(\hat p_{HX}=0.100\), or 10.0% over one annual interval under the fitted model. (2) The only path is \(D\to D\to D\), so the probability is \((0.600)(0.600)=0.360\). (3) Two years allow multiple paths and the intermediate state may differ; here the two paths ending in \(D\) are \(H\to H\to D\) and \(H\to D\to D\), giving \(0.360\). (4) Current disease status may not summarize disease duration or prior progression; if those affect next-visit risk, earlier history still matters after conditioning on current state.

Clinical Biostats