估计R中的生存概率


14

基于生存时间的样本,我想使用Kaplan-Meier估计量来估计某个特定的生存时间的概率。有可能这样做吗?请注意,不一定是事件时间。牛逼牛逼牛逼ñŤŤRŤ


1
当然:看到生存包的survfit()函数[类型帮助(包=“生存”)]
斯特凡劳伦

3
@Stephane Laurent:surfit()函数在事件发生时输出估计的生存时间。但我想有一个自动程序来计算在任何时间t的生存时间。谢谢...
2012年

然后使用roxfun()
斯蒂芬·洛朗

我可以举个例子吗?
user7064'4

Answers:


23

您可以使用包中survfit函数的输出survival并将其提供给stepfun

km <- survfit(Surv(time, status)~1, data=veteran)
survest <- stepfun(km$time, c(1, km$surv))

现在survest是可以随时评估的功能。

> survest(0:100)
  [1] 1.0000000 0.9854015 0.9781022 0.9708029 0.9635036 0.9635036 0.9635036
  [8] 0.9416058 0.9124088 0.9124088 0.8978102 0.8905109 0.8759124 0.8613139
 [15] 0.8613139 0.8467153 0.8394161 0.8394161 0.8175182 0.8029197 0.7883212
 [22] 0.7737226 0.7664234 0.7664234 0.7518248 0.7299270 0.7299270 0.7225540
 [29] 0.7225540 0.7151810 0.7004350 0.6856890 0.6856890 0.6783160 0.6783160
 [36] 0.6709430 0.6635700 0.6635700 0.6635700 0.6635700 0.6635700 0.6635700
 [43] 0.6561970 0.6488240 0.6414510 0.6340780 0.6340780 0.6340780 0.6267050
 [50] 0.6193320 0.6193320 0.5972130 0.5750940 0.5677210 0.5529750 0.5529750
 [57] 0.5456020 0.5456020 0.5456020 0.5382290 0.5382290 0.5308560 0.5308560
 [64] 0.5234830 0.5234830 0.5234830 0.5234830 0.5234830 0.5234830 0.5234830
 [71] 0.5234830 0.5234830 0.5161100 0.5087370 0.5087370 0.5087370 0.5087370
 [78] 0.5087370 0.5087370 0.5087370 0.4939910 0.4939910 0.4866180 0.4866180
 [85] 0.4791316 0.4791316 0.4791316 0.4716451 0.4716451 0.4716451 0.4640380
 [92] 0.4640380 0.4564308 0.4564308 0.4564308 0.4412164 0.4412164 0.4412164
 [99] 0.4412164 0.4257351 0.4179945

超现实存在问题,正在StackExchange上寻找答案,找到相同的问题,并且意识到自己是将近7年前回答这个问题的人……
Brian Diggs

7

可以将时间参数传递给survfit对象的summary函数:

summary(km, times=100)

一个向量也可以被传递:

summary(km, times=0:100)
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.