survival
is the most commonly used package for survival analysis in R. Using the built-in lung
dataset we can get started with Survival Analysis by fitting a regression model with the survreg()
function, creating a curve with survfit()
, and plotting predicted survival curves by calling the predict
method for this package with new data.
In the example below we plot 2 predicted curves and vary sex
between the 2 sets of new data, to visualize its effect:
require(survival)
s <- with(lung,Surv(time,status))
sWei <- survreg(s ~ as.factor(sex)+age+ph.ecog+wt.loss+ph.karno,dist='weibull',data=lung)
fitKM <- survfit(s ~ sex,data=lung)
plot(fitKM)
lines(predict(sWei, newdata = list(sex = 1,
age = 1,
ph.ecog = 1,
ph.karno = 90,
wt.loss = 2),
type = "quantile",
p = seq(.01, .99, by = .01)),
seq(.99, .01, by =-.01),
col = "blue")
lines(predict(sWei, newdata = list(sex = 2,
age = 1,
ph.ecog = 1,
ph.karno = 90,
wt.loss = 2),
type = "quantile",
p = seq(.01, .99, by = .01)),
seq(.99, .01, by =-.01),
col = "red")