Analiza przeżycia w Pythonie
Shae Wang
Senior Data Scientist
Nazwa DataFrame: mortgage_df
| id | property type | duration | paid_off |
|---|---|---|---|
| 1 | house | 25 | 0 |
| 2 | apartment | 17 | 1 |
| 3 | apartment | 5 | 0 |
| ... | ... | ... | ... |
| 100 | house | 30 | 1 |
Typ nieruchomości: rodzaj nieruchomości finansowanej hipoteką (dom lub mieszkanie)
Często interesuje nas ocena, czy istnieją różnice w przeżyciu (lub prawdopodobieństwach zdarzeń/przeżycia) między różnymi grupami podmiotów.
Dopasowanie funkcji przeżycia Kaplana-Meiera do każdej grupy i wizualizacja krzywych obok siebie.
Zalety:
Nazwa DataFrame: mortgage_df
| id | property type | duration | paid_off |
|---|---|---|---|
| 1 | house | 25 | 0 |
| 2 | apartment | 17 | 1 |
| 3 | apartment | 5 | 0 |
| ... | ... | ... | ... |
| 100 | house | 30 | 1 |
Utwórz maskę logiczną dla każdej grupy.
house = (mortgage_df["property_type"]=="house")
apt = (mortgage_df["property_type"]=="apartment")
Przy tylko 2 grupach wystarczy 1 maska. Drugą grupę można wskazać przez negację.
Utwórz wykres i zainicjuj klasę KaplanMeierFitter.
ax = plt.subplot(111)
mortgage_kmf = KaplanMeierFitter()
Dopasuj mortgage_kmf do grupy domów i wyrysuj na wykresie ax.
mortgage_kmf.fit(duration=mortgage_df[house]["duration"],
event_observed=mortgage_df[house]["paid_off"],
label="Houses")
mortgage_kmf.plot_survival_function(ax=ax)
Dopasuj mortgage_kmf do grupy mieszkań i wyrysuj na wykresie ax.
mortgage_kmf.fit(duration=mortgage_df[apt]["duration"],
event_observed=mortgage_df[apt]["paid_off"],
label="Apartments")
mortgage_kmf.plot_survival_function(ax=ax)
plt.show()


Uwaga: jeśli przedziały ufności nakładają się w pewnych punktach, rzeczywista różnica między krzywymi jest mniej prawdopodobna.
Analiza przeżycia w Pythonie