[英]plot of individual survival curves in R
在R中,我将数据库安排为一个计数过程,以应用扩展的Cox模型(具有随时间变化的协变量):终点是事件发生时间或审查时间,切点是数据中所有事件发生的时间:
newdatabase <- survSplit(database,cut=eventTimes,
end=time_to_event_variable,
event=Status,start="start",id="newID")
object<-coxph(Surv(newdatabase$start, newdatabase[time_to_event_variable],
newdatabase[Status] ~.,
data = newdatabase [c(some_covariates)])
现在我的愿望是绘制个体生存曲线(对于个体i):
S_i_cox <- survfit(object,newdata=newdatabase,id=newID)[i]
我的问题是survFit对象仅描述患者i在其他事件之前的事件时间到患者i的事件时间之前的生存曲线:
换句话说,每个病人的S_i_cox$time and S_i_cox$surv
会有所不同,这取决于病人i事件之前发生了多少事件。 例如,具有最低时间事件的患者只能测量其生存曲线(在对象S_i_cox
)。
如何获得更多的生存点(并获得曲线的真实估计)? 我知道我可以将survSplit的切点更改为更多点,但其想法是还要预测患者实际终点事件后的个体存活率。
非常感谢Ilan
我记得使用扩展的Cox模型来执行此操作,就像您上面描述的那样
克莱因鲍姆(Kleinbaum)在他的书中对此进行了解释:通过将摘要或绘图功能应用于从函数survfit创建的对象,可以获得Cox调整后的生存估计和绘图。 第一步是使用coxph函数运行Cox模型。
调整后的生存曲线通常取决于协变量的模式。 假设我们有兴趣绘制模式SEX ='MALE',BLOOD_PRESSURE = 130和TREATMENT = 0的生存曲线。 首先,我们需要使用data.frame函数创建一个数据集(或数据框)并进行一次观察。 例如:
pattern1=data.frame(SEX='MALE', BLOOD_PRESSURE=130, TREATMENT=0)
这个观察数据帧称为pattern1。 要获得用Cox调整的生存估计值,请在摘要函数中应用survfit函数,如下所示:
summary(survfit(mod1,newdata=pattern1))
survfit函数的第一个参数是使用coxph函数创建的名为mod1的对象。 第二个参数提供包含感兴趣的协变量模式(称为pattern1)的数据框。
要绘制它:
plot(survfit(mod1,newdata=pattern1))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.