R中个体存活曲线图

时间:2014-07-24 15:15:07

标签: r plot regression survival-analysis cox-regression

在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会有所不同,具体取决于患者数量 事件发生在患者之前。例如,具有最低时间事件的患者 只有一次他的生存曲线测量(在对象S_i_cox中)。

如何获得更多生存点(并获得真实的曲线估计)? 据我所知,我可以更改survSplit的剪辑以获得更多积分 但是这个想法是预测患者实际终点事件后的个体幸存者。

非常感谢 伊兰

1 个答案:

答案 0 :(得分:0)

我记得用扩展的Cox模型做这件事,就像你上面描述的那样

Kleinbaum在他的书中解释了这一点: Cox调整后的生存估计和图可以通过将摘要或绘图函数应用于从函数survfit创建的对象来获得。第一步是使用coxph函数运行Cox模型。

调整后的生存曲线通常取决于协变量的模式。假设我们有兴趣绘制模式SEX ='MALE',BLOOD_PRESSURE = 130和TREATMENT = 0的生存曲线。首先,我们需要使用data.frame函数创建一个带有一个观察的数据集(或数据帧)。 E.g:

pattern1=data.frame(SEX='MALE', BLOOD_PRESSURE=130, TREATMENT=0)

这一个观察数据帧称为pattern1。要获得Cox调整后的生存估计值,请在摘要函数中应用幸存函数,如下所示:

summary(survfit(mod1,newdata=pattern1))

幸存函数的第一个参数是使用coxph函数创建的名为mod1的对象。第二个参数提供包含感兴趣的协变量模式的数据帧(称为pattern1)。

绘制它:

plot(survfit(mod1,newdata=pattern1))