为了账号安全,请及时绑定邮箱和手机立即绑定

Python 中的生命线生存分析。该方法的部分风险是什么?

Python 中的生命线生存分析。该方法的部分风险是什么?

牛魔王的故事 2021-08-05 17:06:59
我正在尝试使用 Python Lifelines 包来校准和使用 Cox 比例风险模型。所以,结果总结是:coef  exp(coef)  se(coef)        z      p  lower 0.95  upper 0.95 PD    -1.1446     0.3183    0.0814 -14.0563 0.0000     -1.3042     -0.9850  ***oil   -0.1275     0.8803    0.0016 -79.2128 0.0000     -0.1306     -0.1243  ***curr  -0.1353     0.8735    0.0020 -67.3416 0.0000     -0.1392     -0.1313  ***matur -0.0002     0.9998    0.0000 -13.6039 0.0000     -0.0002     -0.0002  ***Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1Concordance = 0.602然后我需要计算部分风险,例如,使用我的生存数据选项卡的第一行,即:PD  oil curr    Durat   binar   matur0   0.135760    62.799048   59.004243   1.446575    0   179它必须是这样的:PD = 0.13576oil = 62.799048curr = 59.004243matur = 179np.exp(-1.1446*PD - 0.1275*oil - 0.1353*curr -0.0002*matur)并且等于 9.387106981409155e-08,所以它是非常小的数字并且导致所有 t 的生存概率等于 1.0。但是当我得到一个 cph.predict_partial_hazard(cox_surv) 方法时,它给了我类似 0.32 的值,我认为这是正确的数字。例如,我们有 Baseline SP = 0.7 并且通过 (0.7^0.32) 到部分风险,我们会得到类似 0.892136633056215 的值,这是正常的。什么是错误?我们如何以正确的方式计算部分风险?非常感谢!
查看完整描述

1 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

生命线的作者在这里。

生命线中的部分风险是通过首先去除变量的含义来计算的,因此在生命线中,计算类似于

np.exp(-1.1446*(PD-mean_PD) - 0.1275*(oil-mean_oil) - 
          0.1353*(curr-mean_curr) -0.0002*(matur-mean_matur))

这可能会给您带来更大的部分风险(但是所有科目的相对排名保持不变)。

文档字符串没有提到这一点,但是,我会在 v0.15.0 中修复它。


查看完整回答
反对 回复 2021-08-05
  • 1 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信