predict.survreg {survival}R Documentation

Predicted Values for a ‘survreg’ Object


Predicted values for a survreg object


## S3 method for class 'survreg'
predict(object, newdata,  
type=c("response", "link", "lp", "linear", "terms", "quantile",  
	"uquantile"),, terms=NULL, p=c(0.1, 0.9), na.action=na.pass, ...)



result of a model fit using the survreg function.


data for prediction. If absent predictions are for the subjects used in the original fit.


the type of predicted value. This can be on the original scale of the data (response), the linear predictor ("linear", with "lp" as an allowed abbreviation), a predicted quantile on the original scale of the data ("quantile"), a quantile on the linear predictor scale ("uquantile"), or the matrix of terms for the linear predictor ("terms"). At this time "link" and linear predictor ("lp") are identical.

if TRUE, include the standard errors of the prediction in the result.


subset of terms. The default for residual type "terms" is a matrix with one column for every term (excluding the intercept) in the model.


vector of percentiles. This is used only for quantile predictions.


applies only when the newdata argument is present, and defines the missing value action for the new data. The default is to include all observations.


for future methods


a vector or matrix of predicted values.


Escobar and Meeker (1992). Assessing influence in regression analysis with censored data. Biometrics, 48, 507-528.

See Also

survreg, residuals.survreg


# Draw figure 1 from Escobar and Meeker, 1992.
fit <- survreg(Surv(time,status) ~ age + I(age^2), data=stanford2, 
with(stanford2, plot(age, time, xlab='Age', ylab='Days', 
	xlim=c(0,65), ylim=c(.1, 10^5), log='y', type='n'))
with(stanford2, points(age, time, pch=c(2,4)[status+1], cex=.7))
pred <- predict(fit, newdata=list(age=1:65), type='quantile', 
	         p=c(.1, .5, .9)) 
matlines(1:65, pred, lty=c(2,1,2), col=1) 

# Predicted Weibull survival curve for a lung cancer subject with
#  ECOG score of 2
lfit <- survreg(Surv(time, status) ~ ph.ecog, data=lung)
pct <- 1:98/100   # The 100th percentile of predicted survival is at +infinity
ptime <- predict(lfit, newdata=data.frame(ph.ecog=2), type='quantile',
                 p=pct, se=TRUE)
matplot(cbind(ptime$fit, ptime$fit + 2*ptime$,
                         ptime$fit - 2*ptime$, 1-pct,
        xlab="Months", ylab="Survival", type='l', lty=c(1,2,2), col=1)

[Package survival version 3.7-0 Index]