如何绘制多元survreg生成的生存曲线

5
这个问题是从这个问题here继承而来的,我们想要绘制一个多元模型。
假设我们想要绘制survreg示例中的生存函数,来源于包发行说明 模型如下:
survreg(Surv(time, status) ~ ph.ecog + age + strata(sex), lung)

据我理解,以下问题似乎涉及此问题,但没有提供数据集,并且仅使用一个变量。在这个例子中,我们有两个连续变量和一个因子。
1个回答

4

根据帮助页面中的示例,预测肺部$年龄均值和肺部$ ph.ecog众数的假设个体的生存曲线绘制如下:

?predict.survreg
pct <- 1:98/100
ptime <- predict(res, newdata=data.frame(ph.ecog=1, age=62.44737, sex=1),  type='quantile',
                  p=pct, se=TRUE)
 matplot(cbind(ptime$fit, ptime$fit + 2*ptime$se.fit,
                          ptime$fit - 2*ptime$se.fit)/30.5, 1-pct,
         xlab="Months", ylab="Survival", type='l', lty=c(1,2,2), col=1)

enter image description here


如果我们想在同一张图上创建第二条曲线,比如说与相反性别的人,我们是使用lines函数还是相同的predict函数并加上add=TRUE参数呢? - user08041991
我会使用新值重新运行 predict.survreg,然后使用 matlines,也许使用不同的 col 参数。 - IRTFM
@42 有没有办法调整这个结果,使得 x 和 y 可以拥有不同数量的行?显然,matplot 只能在 x 和 y 长度相等的情况下工作。 - jvalenti
我需要一个更完整的问题描述,因为在当前的用例中,我所看到的“Y值”是由“X值”生成的,但我猜测您正在寻找在生成Y之前将expand.grid应用于您的X值。如果标题中包含字符串“surv”或标签[survival-analysis],我会看到它。 - IRTFM

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接