生存時間分析 生存関数とハザード関数の関係

f:id:kimoppy126:20201004005550p:plain

生存時間解析とは

生存時間解析とは、明確な地点から特定のイベントもしくはエンドポイントまでの時系列データ(Time to event型のデータ)に対する解析を示す用語です。

応答変数に関しては文字通りの生存時間のみならず、心理学実験における課題完了までの時間や電子部品が故障するまでの時間など多岐に渡ります。

通常のデータ解析手法は生存時間データには馴染みません。
この要因としてはデータの分布が裾の長い分布となっていることが1つ挙げられますが、最大の理由は 打ち切り(censoring) が存在するためです。

打ち切りの種類

生存時間分析を行う上で見逃すことのできない重要な過程が、生存時間 $t$ が時間 $c$ で打ち切りとなるメカニズムは独立であるということです。 生存時間は観察期間の設定に左右されるため、観察期間の設定はデータの精査前にあらかじめ行う必要があります。

例えば、病状の悪化によりある被験者を治療から脱落とするような場合、その打ち切り事由は生存時間と関係のあるメカニズムとなるため、統計的に正しい生存時間分析を行うことはできません。 このような打ち切りは情報のある打ち切りと呼んだりします。 生存時間分析においては、全ての打ち切りが情報のない打ち切りとなるように十分注意する必要があります。

打ち切りにはその発生が生存時間の後か前か、区間内かなどによってそれぞれ右側打ち切り、左側打ち切り、区間打ち切りという呼ばれ方をします。
右側打ち切りが最も一般的であるため、生存時間分析の手法は右側打ち切りのあるデータを重点が置かれています(左側打ち切りや区間打ち切りを扱うには拡張したモデルを使う必要があります)。

右側打ち切り

時間 $t_0$ で研究に参加した被験者の死亡時刻を時間 $t_0 + t$ としたとき、
被験者が観測期間中生き続けた場合や引っ越しなどで途中から追跡不能となっている場合 $t$ は未知となります。
被験者が時間 $t_0 + c$ で生存していたことだけが分かっている場合、この $c$ を打ち切りを受けた生存時間といいます。

このような打ち切りは、既知である最後の生存時間の右側(後)で生じるため、右側打ち切りと呼ばれます。

f:id:kimoppy126:20201001042904p:plain

左側打ち切り

右側打ち切りの場合は、実際の生存時間が観測値よりも長い場合に生じるものでした。左側打ち切りはその逆で、実際の生存時間が観測値よりも短い場合に生じます。
時間 $t_0$ からリスクに晒されている集団について、観測を開始したのが $t_0'$ であった場合、 $t_0'$ の時点でイベントの発生が判明したとします。
このとき、$t_0'$ の時点では疾病が発症していたことが分かるものの、$t_0'$ 以前のどの時点で発症していたのか不明となってしまいます。

このような打ち切りは、既知である最初の生存時間の左側(前)で生じるため、左側打ち切りと呼ばれます。


区間打ち切り

ある期間においてイベントが発生していることが判明している場合、区間打ち切りと呼びます。

例としては、薬物の使用を予防するための介入研究が挙げられます。 こういった研究では、ある処置を加えた後、被験者と数か月ごとに連絡をとることで薬物の再使用を確認します。観測された時間変数は、連絡を取る間隔の定数倍の離散値となることから、ある区間においてイベントが発生したという情報しか得ることができません。

f:id:kimoppy126:20201001042914p:plain

生存関数とハザード関数

生存時間データを要約する際、主に関心があるのは生存関数とハザード関数という2つの関数になります。

生存関数

$T$ を生存時間を表す確率変数とし、死亡というイベントが起きる確率を確率分布 $f(t)$ に従うとする。
$T$ の分布関数$F(t)$は、

$$ F(t) = P(T \leq t) = \int^t_0 {f(u)du} $$

で与えられ、生存時間がある値 $t$ よりも小さい値となる確率を示します。

生存関数 $S(t)$ は、生存時間が $t$ 以上となる確率であり、

$$ S(t) = P(T \geq t) = 1 - F(t) $$

となります。

ハザード関数

ハザード関数は、時点 $t$ における死亡のリスクやハザードを示すために使用されます。 $T$ が $t$ 以上であるという条件の下で、 $t$ から $t+\delta t$ までの値をとる確率を考え、この $\delta t$を極限まで0に近づけることを考えます。

$$ h(t)=\lim_{\delta t \to 0}\frac{P(t\leq T<t+\delta t|T\geq t)}{\delta t} $$

$$ \begin{align} P(t \leq T \leq t+\delta t | T \geq t) & =\frac{P(t \leq T \leq t+\delta t)}{P(T\geq t)} \\ & =\frac{F(t+\delta) - F(t)}{S(t)} \end{align} $$

したがって、$h(t)$ は下記のように表せます。

$$ \begin{align} h(t)& =\lim_{\delta t \to 0}\frac{P(t\leq T \leq t+\delta t|T\geq t)}{\delta t}\\ & =\lim_{\delta t \to 0}\bigl\{\frac{P(t\leq T \leq t+\delta t)}{P(T\geq t)}\times\frac{1}{\delta t}\bigr\} \\ & =\lim_{\delta t \to 0}\bigl\{\frac{F(t+\delta t)-F(t)}{S(t)}\times \frac{1}{\delta t}\bigr\}\\ & =\lim_{\delta t \to 0}\bigl\{\frac{F(t+\delta t)-F(t)}{\delta t}\times \frac{1}{S(t)}\bigr\}\\ & =\frac{f(t)}{S(t)}\\ & =-\frac{d}{dt}\{\log{S(t)}\} \end{align} $$

よって、生存時間関数 $S(t)$ は、累積ハザード $H(t)=\int_0^t{h(u)du}$ を用いて下記のように表せます。

$$ S(t) = \exp\{-H(t)\} \Leftrightarrow H(t) = \log\{-S(t)\} $$

参考