Анализ выживаемости в Python. Какова частичная опасность в этом методе? - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь использовать пакет Python Lifelines для калибровки и использовать модель пропорциональной опасности Кокса.

Итак, итоговый результат:

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, так что это очень маленькая цифра и приводит к вероятности выживания, равной 1,0 для всех t. Но когда я получил метод cph.predict_partial_hazard (cox_surv), он дал мне что-то вроде 0,32, и это правильная цифра, я думаю. Например, у нас есть базовый SP = 0,7 и (0,7 ^ 0,32) для частичной опасности, мы получим что-то вроде 0,892136633056215, это нормально. В чем ошибка? Как правильно рассчитать частичную опасность? Большое спасибо!

1 Ответ

0 голосов
/ 02 ноября 2018

Автор спасательных кругов здесь.

Частичная опасность в линиях жизни рассчитывается по первым де-значениям переменных, поэтому при расчете линии жизни должно быть что-то вроде

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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...