[R] How do i compute predicted failure time from a cox model?
Frank E Harrell Jr
f.harrell at vanderbilt.edu
Mon Feb 16 15:06:15 CET 2009
Eleni Rapsomaniki wrote:
> Given a cox model:
> library(Hmisc); library(survival); (library(Design);
> cox.model=cph(Surv(futime, fustat) ~ age, data=ovarian, surv=T)
> What I need is the total estimated time until failure (death), not the probability of failing at a given time (survival probability), or hazard etc, which is what I get from survest and predict for example.
> I suspect the answer is embarrassing simple...
> (BTW sorry for the duplicate email, the earlier HTML version of my message could not be viewed)
> Eleni Rapsomaniki
> Research Associate
> Strangeways Research Laboratory
> Department of Public Health and Primary Care
You can't get the predicted mean from a Cox model unless the longest
followed subject died. You can get the mean restricted life:
library(Design) # implies Hmisc and survival
f <- cph(..., surv=TRUE)
M <- Mean(f, tmax=3) # area under S(t) from 0 to 3 time units
M( ) # evaluate the mean at a vector of linear predictor values
M(predict(f, data.frame( ))) # evaluate at user-chosen predictor values
The mean restricted life is the life expectency given failure before
time tmax. You have to use a parametric model to get the unrestricted
mean lifetime estimate.
Also see the Quantile function in Design to derive a function to
estimate various quantiles of survival time. In Design, functions
beginning with an upper case letter (like Mean, Quantile, Function,
Hazard) are function generators.
Frank E Harrell Jr Professor and Chair School of Medicine
Department of Biostatistics Vanderbilt University
More information about the R-help