Interpretacja modelu Cox PH

Analiza przeżycia w Pythonie

Shae Wang

Senior Data Scientist

Bazowy hazard

  • Współczynnik hazardu: o ile hazard wzrasta lub maleje względem bazowego hazardu.
  • Bazowy hazard: ryzyko dla osób na bazowych poziomach kowariat.
    • Bazowy $\neq$ ustawienie kowariat na 0
    • Bazowy oznacza ustawienie kowariat na ich średnie (mediana w lifelines)
Analiza przeżycia w Pythonie

Bazowe funkcje

Bazowa funkcja hazardu
model.baseline_hazard_.plot()
plt.show()

baseline_hazard

Bazowa funkcja przeżycia
model.baseline_survival_.plot()
plt.show()

baseline_survival

Analiza przeżycia w Pythonie

Interpretacja współczynnika hazardu

  • Współczynnik hazardu: $e^{coef}$, o ile hazard zmienia się względem przeciętnej osoby przy zmianie kowariat.
Obliczenie Przykład
Współczynnik $x$ $0.405$
Współczynnik hazardu $e^x$ $e^{0.405}=1.5$
Interpretacja hazardu $e^x-1$ $1.5-1 = 0.5$ -> wzrost hazardu o 50%
Interpretacja czasu przeżycia $\frac{1}{e^x}-1$ $\frac{1}{1.5}-1 = 0.67-1 = -0.23$ -> spadek czasu przeżycia o 23%
Analiza przeżycia w Pythonie

Wizualizacja współczynnika hazardu

.plot_partial_effects_on_outcome()

  • covariates (string lub lista): nazwa(-y) kowariant(-y) z oryginalnego zbioru danych, które chcemy zmieniać.
    • Jeśli jest wiele kowariat, należy przekazać je jako listę.
  • values (iterowalny 1d lub 2d): wartości, jakie ma przyjmować kowariant.
    • Jeśli jest wiele kowariat, wartości należy przekazać jako pary/krotki wartości.
Analiza przeżycia w Pythonie

Wizualizacja współczynnika hazardu

Model makowariaty A, B, C, a my chcemy zmieniać

  • A po wartościach 1, 2
  • B po wartościach 3, 4
    model.plot_partial_effects_on_outcome(
        covariates=["A","B"],
        values=[[1,2],
                [3,4]]
    )
    plt.show()
    

wrong_plot_partial_effects_on_outcome

Nieprawidłowo...

Analiza przeżycia w Pythonie

Wizualizacja współczynnika hazardu

Model makowariaty A, B, C, a my chcemy zmieniać

  • A po wartościach 1, 2
  • B po wartościach 3, 4
    model.plot_partial_effects_on_outcome(
        covariates=["A","B"],
        values=[[1,3],
                [1,4],
                [2,3],
                [2,4]]
    )
    plt.show()
    

correct_plot_partial_effects_on_outcome

Prawidłowo!

Analiza przeżycia w Pythonie

Ćwiczmy!

Analiza przeżycia w Pythonie

Preparing Video For Download...