カプランマイアーでつくったモデルから可視化や予測などの情報を取り出します。
可視化
from lifelines import KaplanMeierFitter from lifelines.datasets import load_waltons waltons = load_waltons() kmf = KaplanMeierFitter(label="waltons_data") kmf.fit(waltons['T'], waltons['E']) kmf.plot()
▼こちらにも書いた、基本的なモデルの構築です。 esu-ko.hatenablog.com
滑らかにした生存関数はsurvival_function_
で取得でき、そのままplotもできます。
kmf.survival_function_ #timeline #0.0 1.000000 #6.0 0.993865 kmf.survival_function_.plot() kmf.plot()
対して、plot_cumulative_density
で、t離脱の残存が増えていき、1にたどり着くグラフがかけます。
kmf.plot_cumulative_density()
モデルの情報の取得
モデル化したもの通しを比較したい時に、
median_survival_time_
で残存が半減する期間を、percentile
で指定した割合になる期間を取得できます。
kmf.median_survival_time_
kmf.percentile(0.75)
各個体の経過期間を与えることで、次期まで残る期間を得ることができます。
kmf.predict([6,7,7])
また、ある個体が、その期間からN期先まで残存する確率を出すには、各期間をかけあわせます。
pred_start = 6 pred_end = 12 pred_dur = range(pred_start,pred_end + 1) kmf.predict(pred_dur).prod()