Learn R Programming

RISCA (version 1.0.1)

predict.flexsurv: Prediction from an Flexible Parametric Model

Description

Predict the survival of new observations based on an flexible parametric model from an object of the class flexsurv.

Usage

# S3 method for flexsurv
predict(object, ..., newdata, newtimes)

Value

times

A vector of numeric values with the times of the predictions.

predictions

A matrix with the predictions of survivals of each subject (lines) for each observed times (columns).

Arguments

object

An object returned by the function aft.ggamma, aft.gamma, aft.weibull, ph.exp, or ph.gompertz.

...

Further arguments passed.

newdata

An optional data frame containing covariate values at which to produce predicted values. There must be a column for every covariate included in cov.quanti and cov.quali included in the training sample. The default value isNULL, the predicted values are computed for the subjects of the training sample.

newtimes

The times at which to produce predicted values. The default value isNULL, the predicted values are computed for the observed times in the training data frame.

Author

Yohann Foucher <Yohann.Foucher@univ-nantes.fr>

Camille Sabathe <camille.sabathe@univ-nantes.fr>

Details

The model object is obtained from the flexsurvreg package.

Examples

Run this code

data(dataDIVAT2)

# The estimation of the training model
model<-ph.gompertz(times="times", failures="failures", data=dataDIVAT2,
  cov.quanti=c("age"),  cov.quali=c("hla", "retransplant", "ecd"))

# Predicted survival for subjects of the training sample
pred <- predict(model)

# Predicted survival for 2 new subjects
pred <- predict(model,
  newdata=data.frame(age=c(52,52), hla=c(0,1), retransplant=c(1,1), ecd=c(0,1)))

plot(y=pred$predictions[1,], x=pred$times, xlab="Time (years)", ylab="Predicted survival",
     col=1, type="l", lty=1, lwd=2, ylim=c(0,1))

lines(y=pred$predictions[2,], x=pred$times, col=2, type="l", lty=1, lwd=2)

legend("bottomright", col=c(1,2), lty=1, lwd=2, c("Subject #1", "Subject #2"))

Run the code above in your browser using DataLab