見出し画像

書記が数学やるだけ#845 Cox比例ハザードモデル

生存時間解析でよく用いられるCox比例ハザードモデルを実装する。


問題


説明

比例ハザードモデルでは,共変量の単位増加による固有の効果は,ハザード率に対して乗法的に作用する。デイヴィッド・コックス卿は,比例ハザードの仮定が成り立つ(あるいは成り立つと仮定される)場合,ハザード関数を考慮せずに効果パラメータを推定することが可能であると述べ,Cox比例ハザードモデルを示した。


解答

比例ハザード性は,ハザード関数の比は時間tに依存しないことから示される。また,生存関数の2重対数は線形モデルで表すことができる。


今回用いるデータセットの「rossi」では,1970年に米国メリーランド州の刑務所から釈放され,釈放後に一年間追跡調査された受刑者を「財政援助を受けたか否か」で分類し,「釈放後の最初の逮捕までの週数(week)」を生存関数,「逮捕の有無arrest」を状態変数,「過去の受刑回数prio」など7項目を共変数としている。

from lifelines import CoxPHFitter
from lifelines.datasets import load_rossi
rossi = load_rossi()
rossi


それではCox比例ハザードモデルを組んでいく。

cph = CoxPHFitter()
cph.fit(rossi, duration_col='week', event_col='arrest')
cph.print_summary()


係数を可視化することで,「過去の受刑回数prio」が有意であることがわかる。

cph.plot()


実際にprioごとに生存関数をプロットすると,その共変量としての効果がわかる。

cph.plot_partial_effects_on_outcome(covariates='prio', values=[0, 2, 4, 6, 8, 10], cmap='coolwarm')



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


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

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