Survival Analysis in Python
Shae Wang
Senior Data Scientist
Název 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 nemovitosti: druh nemovitosti financované hypotékou (dům nebo byt)
Často nás zajímá, zda existují rozdíly v přežití (nebo pravděpodobnostech události/přežití) mezi různými skupinami subjektů.
Přizpůsobení Kaplan-Meierovy funkce přežití každé skupině a vizualizace křivek vedle sebe.
Výhody:
Název 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 |
Vytvořte booleovskou masku pro každou skupinu.
house = (mortgage_df["property_type"]=="house")
apt = (mortgage_df["property_type"]=="apartment")
Pokud existují pouze 2 skupiny, stačí 1 maska. Na druhou skupinu lze odkazovat pomocí negace.
Vytvořte jeden graf a inicializujte třídu KaplanMeierFitter.
ax = plt.subplot(111)
mortgage_kmf = KaplanMeierFitter()
Přizpůsobte mortgage_kmf skupině domů a vykreslete do grafu 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)
Přizpůsobte mortgage_kmf skupině bytů a vykreslete do grafu 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()


Poznámka: pokud se intervaly spolehlivosti v některých bodech překrývají, je méně pravděpodobné, že mezi křivkami existuje skutečný rozdíl.
Survival Analysis in Python