r - 获取一个与原始数据大小相同的“survfit”对象,以防出现平局?(生存,R)
问题描述
我想要 Kaplan-Meier 估计器为我的数据框的每个人估计的生存概率。该 survfit(Surv(.))
函数计算按降序排列的每个唯一时间的生存概率。
survfit
从对象中获取每个个体的生存概率的优雅方法是什么?
library(survival)
data = data.frame(cbind(id = 1:10,
time = c(2,3,4,5,2,3,8,9,10,11),
status = c(1,0,0,1,0,1,0,1,0,1)))
survfit(Surv(data$time, data$status)~1)$surv
# 0.9000 0.7875 0.7875 0.6300 0.6300 0.4200 0.4200 0.0000
survfit(Surv(data$time, data$status)~1)$time
# 2 3 4 5 8 9 10 11
提前致谢!
解决方案
您可以将结果放在 data.frame 中,然后将其合并回
merge(data,
with(survfit(Surv(data$time, data$status)~1), data.frame(time, surv))
)
在这里,我只是with()
用来轻松地从 survfit 结果中提取两列。
推荐阅读
- javascript - 无法在页面上打印值的问题
- python - 如何将 TFNet 导入其他 python 文件而不是从 darkflow 构建文件夹?
- javascript - 世博会文档选择器未显示上传文件
- react-native - 未定义不是对象(评估'route.key')反应导航
- sql - 如何在postgresql的列内插入括号、括号、冒号、双引号
- reactjs - queryCache.setQueryData 不是函数
- bash - 如何在指定位置将变量插入文件
- javascript - JQuery 视频控制器 - 定位相关视频的问题
- python - 如何用逗号分隔小写和大写字母?
- java - 如何模拟 InjectMocks 期间创建的其他类的对象?