見出し画像

書記が数学やるだけ#843 カプラン=マイヤー曲線

生存時間解析の基本事項についていくつか扱っていく。


問題


説明

生存時間解析とは,1つの事象(イベント)が発生するまでの予想される期間を分析する手法であり,特に医学分野で頻用される。


推定の対象には生存関数ハザード関数などがある。基本的な計算については以下を参照:




カプラン=マイヤー推定量は一連の減少する水平ステップの系列であり,これは右側打ち切りデータを考慮に入れることができる。


解答

カプラン=マイヤー推定量の導出にはいろいろあるが,ここではハザード関数の最尤推定を用いる。


具体例として薬剤師国家試験の問題を解いてみる。

・t=0のときは全員生存のためS=1である。

・t=2のとき,5人中1人死亡のため,S=0.8となる。

・t=4のとき,1人打ち切りのため,Sは変わらず3人が残る。

・t=6のとき,1人打ち切りのため,Sは変わらず2人が残る。

・t=8のとき,2人中1人死亡のため,S=0.4となる。

あとはこれをグラフに表せば良い。


最後に,実際のデータからカプラン=マイヤー曲線を描画してみる。load_ddデータセットには,世界の政治リーダーの在任期間についてまとめられている。

from lifelines.datasets import load_dd
data = load_dd()
data


今回の場合,「各リーダーの在職期間;T」と「退任が観測されたかどうか;E」の関係を示すために,KaplanMeierFitterのfitを用いる。

from lifelines import KaplanMeierFitter
kmf = KaplanMeierFitter()

T = data["duration"]
E = data["observed"]

kmf.fit(T, event_observed=E)


あとはカプラン=マイヤー曲線を可視化すれば良い。

from matplotlib import pyplot as plt
kmf.plot()


「at_risk_counts=True」を加えることでイベント数などを同時に示すこともできる。

kmf.plot(at_risk_counts=True)



本記事のもくじはこちら:


いいなと思ったら応援しよう!

Writer_Rinka
学習に必要な本を買います。一覧→ https://www.amazon.co.jp/hz/wishlist/ls/1XI8RCAQIKR94?ref_=wl_share