Twoja pierwsza krzywa przeżycia!

Analiza przeżycia w Pythonie

Shae Wang

Senior Data Scientist

Funkcja przeżycia

  • $T$: moment wystąpienia zdarzenia
  • $t$: dowolny punkt w czasie obserwacji

$$\Large{S(t) = Pr(T>t)}$$

  • $S(t)$: modeluje prawdopodobieństwo, że zdarzenie nastąpi po $t$
  • $Pr(T>t)$: prawdopodobieństwo przeżycia
Analiza przeżycia w Pythonie

Krzywa przeżycia

$$\Large{S(t) = Pr(T>t)}$$

Przykład krzywej przeżycia.

Analiza przeżycia w Pythonie

Krzywa przeżycia

$$\Large{S(t) = Pr(T>t)}$$

Przykład krzywej przeżycia.

Analiza przeżycia w Pythonie

Krzywa przeżycia

$$\Large{S(t) = Pr(T>t)}$$

Przykład krzywej przeżycia.

Legenda krzywej przeżycia.

Analiza przeżycia w Pythonie

Interpretacja krzywej przeżycia

  • Punkt$(a,b)$: prawdopodobieństwo, że jednostka przeżyje dłużej niż $a$, wynosi $b$

Przykład krzywej przeżycia.

Analiza przeżycia w Pythonie

Interpretacja krzywej przeżycia

  • Punkt$(a,b)$: prawdopodobieństwo, że jednostka przeżyje dłużej niż $a$, wynosi $b$
  • Płatsza krzywa: niższe tempo występowania zdarzeń
  • Stroma krzywa: wyższe tempo występowania zdarzeń

Przykład krzywej przeżycia z zaznaczonym punktem.

Analiza przeżycia w Pythonie

Modele nieparametryczne a parametryczne

Modelowanie nieparametryczne
  • Brak założeń co do kształtu danych
Modelowanie parametryczne
  • Zakłada pewien kształt danych
  • Opisane ograniczonym zestawem parametrów
    • Np. krzywa przeżycia może przyjmować rozkład wykładniczy
Analiza przeżycia w Pythonie

Modele nieparametryczne a parametryczne

Modelowanie nieparametryczne
  • Krzywa przeżycia jest zazwyczaj NIE wygładzona

Przykład nieparametrycznej krzywej przeżycia.

Modelowanie parametryczne
  • Krzywa przeżycia jest zazwyczaj wygładzona

Przykład parametrycznej krzywej przeżycia.

  • Wymaga, aby model parametryczny dobrze opisywał dane
Analiza przeżycia w Pythonie

Rysowanie krzywej przeżycia

Pakiet lifelines to kompletna biblioteka do analizy przeżycia.

  • Dopasowuje funkcje przeżycia do danych
  • Rysuje krzywe przeżycia na podstawie dopasowanych funkcji
import lifelines
import matplotlib.pyplot as plt

.fit(durations, event_observed)

.plot_survival_function()

Analiza przeżycia w Pythonie

Przykład krzywej przeżycia

Nazwa ramki danych: mortgage_df

id duration paid_off
1 25 0
2 17 1
3 5 0
... ... ...
100 30 1
  • id: identyfikator kredytu hipotecznego
  • duration: liczba lat, przez które kredyt nie został spłacony
  • paid_off: 1 jeśli kredyt jest w pełni spłacony, 0 jeśli nie
Analiza przeżycia w Pythonie

Przykład krzywej przeżycia

import lifelines
from matplotlib import pyplot as plt
kmf = lifelines.KaplanMeierFitter()
kmf.fit(duration=mortgage_df["duration"], 
        event_observed=mortgage_df["paid_off"])
kmf.plot_survival_function()
plt.show()

przykład krzywej przeżycia Kaplana-Meiera

Analiza przeżycia w Pythonie

Czas na ćwiczenia!

Analiza przeżycia w Pythonie

Preparing Video For Download...