繁体   English   中英

R中的单个生存曲线图

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM