Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R_R - Fatal编程技术网

R

R,r,R,我从以下代码中获得了一个生存图: s = Surv(outcome.[,1], outcome.[,2]) survplot= (survfit(s ~ person.list[,1])) plot(survplot, mark.time = FALSE) person.list只是一个包含15个人的列表 当我绘制这个图时,图上的线都在不同的时间点结束。有没有办法延长所有的线,使它们在某个时间点结束?(即结果。[,1]是一个时间到事件变量,我希望图上的存活线延长到5(年

我从以下代码中获得了一个生存图:

    s = Surv(outcome.[,1], outcome.[,2])
    survplot= (survfit(s ~ person.list[,1]))
    plot(survplot, mark.time = FALSE)
person.list只是一个包含15个人的列表

当我绘制这个图时,图上的线都在不同的时间点结束。有没有办法延长所有的线,使它们在某个时间点结束?(即结果。[,1]是一个时间到事件变量,我希望图上的存活线延长到5(年))

谢谢,
Matt

这不是关于如何做你要求的事情的答案,而是关于为什么你不应该做你要求的事情的解释


行在数据停止的地方停止。过了那个段时间,你们就并没有信息来估计存活率了(这是在传统的卡普兰-迈耶生存分析中,正如你们所设置的)。因此,Kaplan-Meier估计在该时间之后没有得到很好的定义,因此延伸该曲线没有任何特殊意义。虽然从图形上看,您可以在与上一个生存值相同的级别上绘制一条水平线,但这并没有真正意义。

这是我不久前在rhelp上发布的类似问题的代码:

?survfit#获取一个工作示例,因为您没有提供一个

lsurv2我觉得有必要指出,在这种情况下,1)有54(周)的数据,因此曲线定义良好,2)绘制的是Cox比例风险模型,这也使得延长线合理。给出的代码是有效的,并且符合提问者的要求,但对于Kaplan Meier的案例可能没有意义。对不起。不同意。不管这是考克斯模型还是公里数估计,都无关紧要。水平线应延伸至最后一次观察到的受审查幸存者的时间。它形成了累积存活率的最后估计值。如果这能让你感觉好一点的话,我的向上投票是对你答案的第一个也是迄今为止唯一的回应。我认为建议提问者仔细思考这条线代表的是什么是好的。只是我认为数据是在最后一次审查时停止的,而不是在最后一次审查时停止的。事实上,我同意你的看法。绘制到最后一次审查时间的曲线是合适的。到那时为止,已经有了信息,也有了做出估计的能力。我的问题是把它从上次审查的观察中拉出来(在Kaplan Meier的案例中,上次审查的事件在每组中可能不同)。在您链接的示例中,54周是最后一次经过审查的观察,因此绘制到该点的曲线是合适的。我的评论是关于在你给出的例子中它是如何合适的,而在一般情况下它可能不合适。太好了。那么,我们完全同意。
  ?survfit   # to get a working example since you did not provide one
  lsurv2 <- survfit(Surv(time, status) ~ x, aml, type='fleming')
  plot(lsurv2, lty=2:3, xmax=300)  # drats, no effect of xmax
  str(lsurv2)      # so see the structure of the survfit object
  lsurv2$time[21] <- 300         #add a time value
  lsurv2$n.censor[21] <- 1       # mark as censoring time
  lsurv2$strata[2] <- 11         # add to count of group 2

  plot(lsurv2, lty=2:3, xmax=300)  # horizontal line to 300 for group 2
plot(surv, mark.time=F, fun='event', xlim=c(0, 54))
  for (i in 1:length(surv$strata)) { #number of curves
     temp <- surv[i]
     lines(c(max(temp$time), 54), 1- rep(min(temp$surv),2))
     }