Skip to contents

Plot a Kaplan-Meier estimate of the survival probability and compare it with the fitted survival probability from a msm model.

Usage

# S3 method for class 'survfit.msm'
plot(
  x,
  from = 1,
  to = NULL,
  range = NULL,
  covariates = "mean",
  interp = c("start", "midpoint"),
  ci = c("none", "normal", "bootstrap"),
  B = 100,
  legend.pos = NULL,
  xlab = "Time",
  ylab = "Survival probability",
  lty = 1,
  lwd = 1,
  col = "red",
  lty.ci = 2,
  lwd.ci = 1,
  col.ci = "red",
  mark.time = TRUE,
  col.surv = "blue",
  lty.surv = 2,
  lwd.surv = 1,
  survdata = FALSE,
  ...
)

Arguments

x

Output from msm, representing a fitted multi-state model object.

from

Non-absorbing state from which to consider survival. Defaults to state 1. The fitted probabilities will then be calculated as the transition probabilities from this state to to. The empirical survival curve plots survival from the first observation of from (where this exists) to the first entry time into to.

to

Absorbing state to consider. Defaults to the highest-labelled absorbing state.

range

Vector of two elements, giving the range of times to plot for.

covariates

Covariate values for which to evaluate the expected probabilities. This can either be:

the string "mean", denoting the means of the covariates in the data (this is the default),

the number 0, indicating that all the covariates should be set to zero,

or a list of values, with optional names. For example

list (60, 1)

where the order of the list follows the order of the covariates originally given in the model formula, or a named list,

list (age = 60, sex = 1)

but note the empirical curve is plotted for the full population. To consider subsets for the empirical curve, set survdata=TRUE to extract the survival data and build a survival plot by hand using plot.survfit.

interp

If interp="start" (the default) then the entry time into the absorbing state is assumed to be the time it is first observed in the data.

If interp="midpoint" then the entry time into the absorbing state is assumed to be halfway between the time it is first observed and the previous observation time. This is generally more reasonable for "progressive" models with observations at arbitrary times.

ci

If "none" (the default) no confidence intervals are plotted. If "normal" or "bootstrap", confidence intervals are plotted based on the respective method in pmatrix.msm. This is very computationally-intensive, since intervals must be computed at a series of times.

B

Number of bootstrap or normal replicates for the confidence interval. The default is 100 rather than the usual 1000, since these plots are for rough diagnostic purposes.

legend.pos

Vector of the \(x\) and \(y\) position, respectively, of the legend.

xlab

x axis label.

ylab

y axis label.

lty

Line type for the fitted curve. See par.

lwd

Line width for the fitted curve. See par.

col

Colour for the fitted curve. See par.

lty.ci

Line type for the fitted curve confidence limits. See par.

lwd.ci

Line width for the fitted curve confidence limits. See par.

col.ci

Colour for the fitted curve confidence limits. See par.

mark.time

Mark the empirical survival curve at each censoring point, see lines.survfit.

col.surv

Colour for the empirical survival curve, passed to lines.survfit. See par.

lty.surv

Line type for the empirical survival curve, passed to lines.survfit. See par.

lwd.surv

Line width for the empirical survival curve, passed to lines.survfit. See par.

survdata

Set to TRUE to return the survival data frame constructed when plotting the empirical curve. This can be used for constructing survival plots by hand using plot.survfit.

...

Other arguments to be passed to the plot function which draws the fitted curve, or the lines.survfit function which draws the empirical curve.

Details

If the data represent observations of the process at arbitrary times, then the first occurrence of the absorbing state in the data will usually be greater than the actual first transition time to that state. Therefore the Kaplan-Meier estimate of the survival probability will be an overestimate.

The method of Turnbull (1976) could be used to give a non-parametric estimate of the time to an interval-censored event, and compared to the equivalent estimate from a multi-state model. This is implemented in the CRAN package interval (Fay and Shaw 2010).

This currently only handles time-homogeneous models.

References

Turnbull, B. W. (1976) The empirical distribution function with arbitrarily grouped, censored and truncated data. J. R. Statist. Soc. B 38, 290-295.

Fay, MP and Shaw, PA (2010). Exact and Asymptotic Weighted Logrank Tests for Interval Censored Data: The interval R package. Journal of Statistical Software. http://www.jstatsoft.org/v36/ i02/. 36 (2):1-34.