Analiza de supraviețuire în Python
Shae Wang
Senior Data Scientist
Numele DataFrame-ului: mortgage_df
| id | property type | duration | paid_off |
|---|---|---|---|
| 1 | house | 25 | 0 |
| 2 | apartment | 17 | 1 |
| 3 | apartment | 5 | 0 |
| ... | ... | ... | ... |
| 100 | house | 30 | 1 |
Tipul proprietății: tipul de locuință finanțat prin credit ipotecar (casă sau apartament)
Suntem adesea interesați să evaluăm dacă există diferențe în supraviețuire (sau probabilități de eveniment/supraviețuire) între diferite grupuri de subiecți.
Ajustarea unei funcții de supraviețuire Kaplan-Meier pentru fiecare grup și vizualizarea curbelor comparativ.
Avantaje:
Numele DataFrame-ului: mortgage_df
| id | property type | duration | paid_off |
|---|---|---|---|
| 1 | house | 25 | 0 |
| 2 | apartment | 17 | 1 |
| 3 | apartment | 5 | 0 |
| ... | ... | ... | ... |
| 100 | house | 30 | 1 |
Creați o mască booleană pentru fiecare grup.
house = (mortgage_df["property_type"]=="house")
apt = (mortgage_df["property_type"]=="apartment")
Dacă există doar 2 grupuri, este necesară o singură mască. Celălalt grup poate fi referit prin negare.
Creați o figură și instanțiați clasa KaplanMeierFitter.
ax = plt.subplot(111)
mortgage_kmf = KaplanMeierFitter()
Ajustați mortgage_kmf pe grupul „house" și reprezentați grafic pe figura 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)
Ajustați mortgage_kmf pe grupul „apartment" și reprezentați grafic pe figura 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()


Notă: dacă intervalele de încredere se suprapun în anumite puncte, este mai puțin probabil că există o diferență reală între curbe.
Analiza de supraviețuire în Python