Python 中的生命线生存分析。该方法的部分危险是什么?
Lifelines Survival Analysis in Python. What is the partial hazard in that method?
我正在尝试使用 Python 生命线包来校准和使用 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 ' ' 1
Concordance = 0.602
然后我需要计算部分风险,例如,使用我的生存数据选项卡的第一行,即:
PD oil curr Durat binar matur
0 0.135760 62.799048 59.004243 1.446575 0 179
一定是这样的:
PD = 0.13576
oil = 62.799048
curr = 59.004243
matur = 179
np.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 的值,我认为这个数字是正确的。例如,我们有基线 SP = 0.7,通过 (0.7^0.32) 到部分风险,我们将得到类似 0.892136633056215 的值,这是正常的。错误是什么?我们如何正确计算部分风险?非常感谢!
这里是生命线的作者。
生命线中的部分危险是通过首先去意义变量计算的,因此在生命线中,计算类似于
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 修复它。
我正在尝试使用 Python 生命线包来校准和使用 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 ' ' 1
Concordance = 0.602
然后我需要计算部分风险,例如,使用我的生存数据选项卡的第一行,即:
PD oil curr Durat binar matur
0 0.135760 62.799048 59.004243 1.446575 0 179
一定是这样的:
PD = 0.13576
oil = 62.799048
curr = 59.004243
matur = 179
np.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 的值,我认为这个数字是正确的。例如,我们有基线 SP = 0.7,通过 (0.7^0.32) 到部分风险,我们将得到类似 0.892136633056215 的值,这是正常的。错误是什么?我们如何正确计算部分风险?非常感谢!
这里是生命线的作者。
生命线中的部分危险是通过首先去意义变量计算的,因此在生命线中,计算类似于
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 修复它。