
198
13 章 生存分析
の
CDF
を計算するという誘惑に駆られるかもしれません。これはまずい考えです。
結果は次のように二重の意味で誤解を招きます。
1.
年齢が上の女性が、インタビュー時に結婚している可能性が高いので、過重
に反応している可能性がある。
2.
既婚女性は比率が大きくなり過ぎる。
実際、この分析では、すべての女性が結婚していることになり、それは明らかに間
違いです。
13.4
カプラン・マイヤー推定
この例では、未婚女性の観察を含めることが望ましいどころか必要なことですが、
そこで、生存分析の中心的なアルゴリズムであるカプラン・マイヤー推定(
Kaplan-
Meier estimation
)を学びましょう。
その概要は、データを使ってハザード関数を推定し、次にハザード関数を生存関数
に変換するというものです。ハザード関数の推定のためには、各年齢について、(
1
)
その年齢で結婚した女性の数、(
2
)それより以前に結婚していない女性を含めた、結
婚の「リスク(可能性)がある」女性の数を考えます。
コードは次のようになります。
def EstimateHazardFunction(complete, ongoing, label=''):
n = len(complete)
hist_complete = thinkstats2.Hist(complete)
sf_complete = SurvivalFunction(thinkstats2.Cdf(complete))
m = len(ongoing) ...