r - 使用 R 中的 RMS 包预测生存?

标签 r machine-learning prediction survival-analysis cox-regression

我正在使用 RMS 包中的函数 survest 来生成生存概率。我希望能够获取数据的子集并将其传递给 survest。我开发了一个 for 循环来执行此操作。这会运行并输出每组预测变量的生存概率。

for (i in 1:nrow(df)){
  row <- df[i,]
  print(row)
  surv=survest(fit, row, times=365)
  print(surv)
  }

我的第一个问题是是否有一种方法可以使用 survest 来预测中位生存期,而不必指定特定的时间范围,或者是否有更好的函数可以使用?

其次,我希望能够仅使用我的 cox 模型的五个预测因子中的四个来预测生存率,例如(如下所示),虽然我知道这不太准确,是否可以使用 survest 来做到这一点?

survest(fit, expand.grid(Years.to.birth =NA, Tumor.stage=1, Date=2000, 
Somatic.mutations=2, ttype="brca"), times=300)

最佳答案

要获取中位生存时间,请使用 Quantile 函数生成器或 survival 包中的 summary.survfit 函数。由 Quantile 创建的函数可以针对 0.5 分位数进行评估。它是线性预测的函数。您需要对观测子集使用 predict 函数来获取线性预测变量值,以计算中位数。

对于您的另外两个问题,survest 需要使用您拟合的完整模型(所有变量)。如果变量不可用,您将需要使用多重插补,或者像 fastbw 那样对模型进行快速近似修改。

关于r - 使用 R 中的 RMS 包预测生存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49513329/

相关文章:

通过脚本运行用 R 编写的 GUI

r - Left_join : Error: cannot allocate vector of size "small" Mb

python-2.7 - DNNCLassifier Tensorflow 上的 label_keys 类型错误

python - 如何在Python中用真实数据测试机器学习模型

r - 小时间序列分析

r - 在 R 中使用 ggplot2 绘制地铁图

删除 R 条形图中刻度线的空间或减小标签的行高

Python信息获取实现

machine-learning - 下一个单词预测引擎 - 它们属于人工智能的哪个分支

r - 在传递给 R 中 Arima() 的 xreg 参数之前,我们是否需要对外生变量进行差分?