Python में Survival Analysis
Shae Wang
Senior Data Scientist
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 |
Property type: वह घर का प्रकार जिसे mortgage से फाइनेंस किया गया है (house या apartment)
अक्सर हम देखना चाहते हैं कि अलग-अलग समूहों के subjects में survival (या event/survival probabilities) में अंतर है या नहीं।
हर समूह के लिए Kaplan-Meier survival function फिट करें और survival curves को साथ-साथ visualize करें।
लाभ:
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 |
हर समूह के लिए एक Boolean mask बनाएँ।
house = (mortgage_df["property_type"]=="house")
apt = (mortgage_df["property_type"]=="apartment")
यदि केवल 2 समूह हैं, तो 1 mask ही काफ़ी है. दूसरे समूह को negation से संदर्भित कर सकते हैं.
एक figure बनाएँ और KaplanMeierFitter class instantiate करें।
ax = plt.subplot(111)
mortgage_kmf = KaplanMeierFitter()
mortgage_kmf को house समूह पर fit करें और figure ax पर plot करें।
mortgage_kmf.fit(duration=mortgage_df[house]["duration"],
event_observed=mortgage_df[house]["paid_off"],
label="Houses")
mortgage_kmf.plot_survival_function(ax=ax)
mortgage_kmf को apartment समूह पर fit करें और figure ax पर plot करें।
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()


ध्यान दें: यदि कुछ बिंदुओं पर confidence intervals overlap करते हैं, तो curves में वास्तविक अंतर होने की संभावना कम होती है।
Python में Survival Analysis