生存分析は、生物の死や機械システムの故障など、ある事象が発生するまでの予想期間を分析する統計学の一分野です。 [ 1 ]このトピックは、工学では信頼性理論、信頼性分析、または信頼性工学と呼ばれ、経済学では期間分析または期間モデリングと呼ばれ、社会学ではイベント履歴分析と呼ばれています。生存分析は、ある時点を超えて生存する人口の割合はどれくらいか?生存した人々のうち、どのくらいの割合で死亡または故障するのか?複数の死因または故障原因を考慮に入れることができるか?特定の状況や特性は、生存確率をどのように増減させるか?といった特定の質問に答えようとします。
こうした疑問に答えるためには、「寿命」を定義する必要がある。生物学的生存の場合、死は明確であるが、機械的信頼性においては、故障は明確に定義できない可能性がある。なぜなら、故障が部分的であったり、程度の問題であったり、あるいは時間的に特定できない機械システムが存在する可能性があるからである。生物学的問題においても、一部の事象(例えば、心臓発作やその他の臓器不全)には同様の曖昧さが伴う可能性がある。以下に概説する理論は、特定の時点における明確に定義された事象を前提としている。その他のケースについては、曖昧な事象を明示的に考慮したモデルの方が適切であろう。
より一般的には、生存分析はイベントまでの時間データのモデリングを伴います。この文脈では、生存分析の文献では、死亡または故障は「イベント」とみなされます。従来、各対象に対して単一のイベントのみが発生し、その後、生物またはメカニズムは死亡または故障します。[ 2 ]繰り返しイベントまたは反復イベントモデルは、この仮定を緩和します。繰り返しイベントの研究は、システムの信頼性、および社会科学や医学研究の多くの分野に関連しています。
生存分析は、いくつかの方法で使用されます。
生存分析では、以下の用語が一般的に使用されます。[ 3 ]
この例では、R の「survival」パッケージの急性骨髄性白血病生存データセット「aml」を使用します。データセットは Miller (1997) [ 4 ]によるもので、標準的な化学療法コースをさらにサイクル延長(「維持」)すべきかどうかが問題です。
生存時間順に並べられたAMLデータセットが枠内に表示されています。
最後の観察(11)は161週で打ち切りとなりました。打ち切りは、患者にイベント(AMLがんの再発なし)が発生しなかったことを示しています。別の被験者である観察3は13週で打ち切りとなりました(ステータス=0で示されています)。この被験者は13週間しか研究に参加しておらず、その13週間の間にAMLがんは再発しませんでした。この患者は研究の終盤近くに登録されたため、13週間しか観察できなかった可能性があります。また、患者は研究の初期に登録されたものの、追跡不能になったか、研究から脱落した可能性もあります。表には、他の被験者が16週、28週、45週で打ち切りになったことが示されています( ステータス=0の観察17、6、9)。残りの被験者はすべて、研究中にイベント(AMLがんの再発)を経験しました。ここで注目すべき点は、維持療法を受けている患者では、維持療法を受けていない患者よりも再発が遅れて起こるかどうかである。
生存関数S ( t ) は、被験者が時間tより長く生存する確率です。S ( t ) は理論的には滑らかな曲線ですが、通常はカプラン・マイヤー(KM) 曲線を使用して推定されます。[ 5 ]このグラフは、AML データの KM プロットを示しており、次のように解釈できます。
生命表は、生存データをイベント数と各イベント時点における生存率で要約したものです。R ソフトウェアを用いて作成したamlデータの生命表を以下に示します。
生命表は、事象とその各時点における生存率をまとめたものです。生命表の各列は、以下の意味を持ちます。
ログランク検定は、 2 つ以上のグループの生存時間を比較します。[ 6 ]この例では、AML データにおける維持療法群と非維持療法群の生存時間の差についてログランク検定を使用します。グラフは、データ内の変数「x」で示される治療群ごとに分けられた、AML データの KM プロットを示しています。

ログランク検定の帰無仮説は、グループの生存率が同じであるというものです。各時点における各グループの生存者の期待数は、各イベント時点におけるグループのリスクのある被験者数に合わせて調整されます。ログランク検定は、各グループで観察されたイベント数が期待数と有意に異なるかどうかを判定します。[ 7 ]正式な検定はカイ二乗統計量に基づいています。ログランク統計量が大きい場合、グループ間の生存時間に差があるという証拠となります。ログランク統計量は、自由度1のカイ二乗分布に近似的に従い、p値はカイ二乗検定を使用して計算されます。
例のデータでは、生存率の差に関するログランク検定のp値はp=0.0653となり、α水準を0.05と仮定すると、治療群間で生存率に有意差はないことを示しています。23人の被験者というサンプルサイズは控えめなので、治療群間の差を検出する力はほとんどありません。カイ二乗検定は漸近近似に基づいているため、サンプルサイズが小さい場合はp値を慎重に扱う必要があります。[ 8 ]
カプラン・マイヤー曲線とログランク検定は、予測変数がカテゴリ変数(例:薬剤 vs. プラセボ)である場合、または カテゴリ変数として扱える少数の値(例:薬剤投与量 0、20、50、100 mg/日)をとる場合に最も有用です。[ 9 ]ログランク検定と KM 曲線は、遺伝子発現、白血球数、年齢などの定量的予測変数には容易に適用できません。定量的予測変数の場合、代替方法としてCox 比例ハザード回帰分析があります。Cox PH モデルは、{0,1} 指標またはダミー変数としてエンコードされたカテゴリ予測変数にも適用できます。ログランク検定は Cox PH 分析の特殊なケースであり、Cox PH ソフトウェアを使用して実行できます。
この例では、ダルガード第14章のメラノーマデータセットを使用します。 [ 10 ]
データはRパッケージISwRに格納されています。Rを用いたCox比例ハザード回帰分析の 結果は、枠内に示したとおりです。

コックス回帰分析の結果は、以下のように解釈される。
要約出力には、ハザード比の95%信頼区間の上限と下限も表示されます。95%信頼区間の下限は1.15、上限は3.26です。
最後に、出力結果には、モデル全体の有意性に関する3つの代替検定のp値が表示されます。
これら3つの検定は漸近的に同等です。Nが十分に大きい場合、同様の結果が得られます。Nが小さい場合は、多少異なる可能性があります。最後の行「スコア(ログランク)検定」はログランク検定の結果で、p=0.011です。ログランク検定はCox比例ハザード回帰の特殊なケースであるため、ログランク検定と同じ結果となります。尤度比検定はサンプルサイズが小さい場合に優れた挙動を示すため、一般的にこちらが好まれます。
Coxモデルは、追加の共変量を含めることを可能にすることで、ログランク検定を拡張します。[ 11 ]この例では、予測変数に腫瘍の厚さ(変数名 = "thick")という連続共変量が含まれるメラノーマデータセットを使用します。

ヒストグラムでは、厚さの値は正に歪んでおり、ガウス分布のような対称的な確率分布を示しません。Coxモデルを含む回帰モデルは、一般的に正規分布する変数を使用した場合により信頼性の高い結果が得られます。この例では、対数変換を使用する場合があります。腫瘍の厚さの対数は正規分布に近いように見えるため、Coxモデルでは対数の厚さを使用します。Rを使用したCox PH分析の結果は以下のとおりです。
library ( ISwR ) # CRAN v2.0-11 library ( survival ) # CRAN v3.8-3# 共変量 log 腫瘍厚を使用してメラノーマデータセットの Cox PH 分析を実行しますf <- coxph ( Surv ( days , status == 1 ) ~ sex + log ( thick ), data = melanom )# Cox PH 出力の要約を表示します( f ) # 呼び出し: # coxph(formula = Surv(days, status == 1) ~ sex + log(thick), data = melanom) # # n= 205、イベント数= 57 # # coef exp(coef) se(coef) z Pr(>|z|) # sex 0.4580 1.5809 0.2687 1.705 0.0883 . # log(thick) 0.7809 2.1834 0.1573 4.963 6.94e-07 *** # --- # 有意水準コード: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 # # exp(coef) exp(-coef) lower .95 upper .95 # sex 1.581 0.6326 0.9337 2.677 # log(thick) 2.183 0.4580 1.6040 2.972 # # Concordance= 0.749 (se = 0.033 ) # Likelihood ratio test= 33.45 on 2 df, p=5e-08 # Wald test = 31 on 2 df, p=2e-07 # Score (logrank) test = 32.52 on 2 df, p=9e-083 つの全体検定 (尤度、ワルド検定、スコア検定) の p 値は有意であり、モデルが有意であることを示しています。はハザード比は6.94 × 10 −7これは、腫瘍の厚さと死亡リスクの増加との間に強い相関関係があることを示している。
対照的に、p値は今はハザード比95%信頼区間は0.9337~2.677である。HRの信頼区間には1が含まれているため、これらの結果は、腫瘍の厚さを調整した後、性別がHRの差に与える影響が小さいことを示している。グラフの検討性別とt検定による性別による分析結果はいずれも、初診時の腫瘍の厚さにおいて、男性と女性の間に有意な差があることを示している。
Coxモデルは、ハザードが比例関係にあることを前提としています。比例ハザードの仮定は、survival RパッケージのR 関数を使用して検証できますcox.zph()。p値が0.05未満の場合、ハザードは比例関係にないことを示します。
cox.zph ( f ) # カイ二乗 自由度 p # 性別 1.33 1 0.248 # log(thick) 6.23 1 0.013 # グローバル 6.70 2 0.035メラノーマのデータについては、性行為の場合。したがって、性行為の危険性が比例するという帰無仮説を棄却することはできません。
コックスモデルは、単純な分析のバリエーションに対応するように拡張することができる。
Cox比例ハザード回帰モデルは線形モデルです。線形回帰やロジスティック回帰と類似しています。具体的には、これらの手法は、単一の直線、曲線、平面、または曲面でグループ(生存、死亡)を分離したり、定量的な応答(生存時間)を推定したりするのに十分であると仮定しています。
場合によっては、代替の分割方法の方がより正確な分類や定量的推定値が得られることがあります。代替方法の1つとして、ツリー構造の生存モデル[ 12 ] [ 13 ] [ 14 ](生存ランダムフォレスト[ 15 ]を含む)があります。ツリー構造の生存モデルは、Coxモデルよりも正確な予測値を与える可能性があります。特定のデータセットに対して両方のタイプのモデルを検討することは、妥当な戦略です。
この生存ツリー分析の例では、R パッケージ「rpart」を使用しています。[ 16 ]この例は、 rpart のデータセット stagec に含まれる 146 人のステージ C 前立腺がん患者に基づいています。rpart と stagec の例については、Atkinson と Therneau (1997) [ 17 ]で説明されており、rpart パッケージのビネットとしても配布されています。[ 16 ]
各段階における変数は以下のとおりです。
解析によって得られた生存ツリーを図に示す。

ツリーの各枝は、変数の値による分割を示しています。たとえば、ツリーの根は、グレードが2.5未満の被験者とグレードが2.5以上の被験者を分割します。末端ノードは、ノード内の被験者数、イベントが発生した被験者数、および根と比較した相対イベント率を示します。一番左のノードでは、値1/33は、ノード内の33人の被験者のうち1人がイベントが発生したこと、および相対イベント率が0.122であることを示しています。一番右下のノードでは、値11/15は、ノード内の15人の被験者のうち11人がイベントが発生したこと、および相対イベント率が2.7であることを示しています。
単一の生存ツリーを構築する代わりに、データのサンプルを使用して各ツリーを構築し、それらのツリーを平均して生存を予測する生存ツリーを多数構築する方法があります。 [ 15 ]これは、生存ランダムフォレストモデルの基礎となる方法です。生存ランダムフォレスト分析は、R パッケージ「randomForestSRC」で利用できます 。[ 18 ]
randomForestSRC パッケージには、データセット pbc を使用した生存ランダムフォレスト分析の例が含まれています。このデータは、1974 年~ 1984 年に実施されたメイヨー クリニックの原発性胆汁性肝硬変 (PBC) 肝臓試験からのものです。この例では、ランダムフォレスト生存モデルは、Cox PH モデルよりも正確な生存予測を提供します。予測誤差は、ブートストラップ再サンプリングによって推定されます。
深層表現学習の最近の進歩は、生存推定にも応用されています。DeepSurv [ 19 ]モデルは、CoxPH モデルの対数線形パラメータ化を多層パーセプトロンに置き換えることを提案しています。Deep Survival Machines [ 20 ]や Deep Cox Mixtures [ 21 ]などのさらなる拡張では、潜在変数混合モデルを使用して、イベント発生までの時間分布をパラメトリック分布またはセミパラメトリック分布の混合としてモデル化し、同時に入力共変量の表現を学習します。深層学習アプローチは、画像や臨床時系列などの複雑な入力データモダリティにおいて特に優れた性能を示しています。
主な関心対象は生存関数であり、慣例的にSと表記され、次のように定義される。 ここで、 tはある時間、Tは死亡時間、またはより一般的には任意のイベントを表す確率変数であり、「Pr」は確率を表します。つまり、生存関数は、特定の時間tよりも大きい時間でイベントを観測する確率です。[ 7 ] 生存関数は、生物学的生存の問題では生存関数または生存率関数とも呼ばれ、機械的生存の問題では信頼性関数とも呼ばれます。[ 22 ]後者の場合、信頼性関数はR ( t ) で表されます。
通常はS (0)=1と仮定されるが、 即時死亡または失敗の可能性がある場合は1未満になる可能性がある。
生存関数は非増加でなければならない。u ≥ tの場合、S ( u ) ≤ S ( t )である。この性質は、 T > u がT > tを意味することから直接導かれる。これは、より若い年齢をすべて達成した場合にのみ、より後の年齢まで生存できるという考え方を反映している。この性質を考慮すると、寿命分布関数とイベント密度 (以下のFとf ) は適切に定義される。[ 2 ]
生存関数は通常、年齢が無限に増加するにつれてゼロに近づくと仮定されます(つまり、t → ∞ のときS ( t ) → 0 )。ただし、永遠の命が可能であれば、その極限値はゼロより大きくなる可能性があります。例えば、安定炭素同位体と不安定炭素同位体の混合物に生存分析を適用することができます。不安定同位体は遅かれ早かれ崩壊しますが、安定同位体は永久に存在し続けます。
関連する量は、生存関数を用いて定義される。
寿命分布関数は、慣例的にFと表記され、生存関数の補関数として定義される。
Fが微分 可能であれば、寿命分布の密度関数である導関数は慣例的にfと表記される。
関数fは、イベント密度と呼ばれることもあり、単位時間あたりの死亡または故障イベントの発生率を表します。
生存関数は、確率分布と確率密度関数を用いて表現することができる。
同様に、生存イベント密度関数は次のように定義できます。
統計物理学などの他の分野では、生存事象の密度関数は、初回通過時間密度として知られています。
ハザード関数は、時刻におけるイベント発生率として定義される。時点での生存を条件とする
ハザード関数の同義語には、さまざまな分野において、ハザード率、強度関数、[ 23 ]死亡力(人口統計学およびアクチュアリー科学、以下で示される)などがあります。破壊力、または破壊率(工学用語では、例えば、アクチュアリー科学では、は、18歳以上の人の死亡率を表します。信頼性工学では一定時間稼働後の部品の故障率を示す。
ハザード関数は、対象者が時間tまで生存しているという条件の下で、次の短い時間間隔で事象を経験する確率を、この時間間隔の長さで割った値を表します。[ 23 ]正式には、これは 次のように記述できます。
ベイズの定理、そして識別最初の等式では生存関数として、2番目の等式では寿命分布の密度関数の定義が使用されています。
任意の機能ハザード関数であるのは、以下の性質を満たす場合に限る。
実際、ハザード率は、寿命分布の他の表現方法よりも、故障の根本的なメカニズムについてより多くの情報を提供することが多い。
ハザード関数は非負でなければならない。、そしてその積分範囲はは無限でなければならないが、それ以外に制約はない。増加関数、減少関数、非単調関数、不連続関数の場合がある。例として、バスタブ曲線ハザード関数がある。これは、の値が小さい場合に大きくなる。減少して最小値に達した後、再び増加する。これは、機械システムが動作直後に故障するか、システムの経年劣化に伴ってずっと後になって故障するかという特性をモデル化することができる。
ハザード関数は、慣例的に累積ハザード関数で表されることもあります。または:
符号を入れ替えて指数化すると
または(連鎖律を用いて)微分する
「累積ハザード関数」という名称は、
これは、時間の経過とともに危険が「蓄積」していくことを意味します。
定義からt が無限大に近づくにつれて、無限に増加することがわかります((ゼロに近づく)。これは、定義上、累積ハザードは発散しなければならないため、あまり急速に減少してはならない。例えば、これは、その積分が1に収束するため、いかなる生存分布のハザード関数でもありません。
生存関数累積ハザード関数密度ハザード関数、そして寿命分布関数は
ある時点における将来の寿命は、年齢まで生存した場合の、死亡までの残り時間です。したがって、現在の表記では、期待される将来寿命は将来寿命の期待値です。年齢で、またはそれ以前に死亡する確率年齢まで生存した場合、それはただ
したがって、将来の寿命の確率密度は
そして、予想される将来の寿命は
ここで、2番目の式は部分積分を用いて得られる。
のためにつまり、出生時においては、これは平均寿命に相当します。
信頼性問題において、期待寿命は平均故障時間と呼ばれ、期待される将来の寿命は平均残存寿命と呼ばれます。
個体が年齢t以降まで生存する確率はS ( t ) であるため、定義により、すべての個体に対して同じ生存関数を仮定すると、初期集団nの新生児のうち年齢tで生存する個体の期待値はn × S ( t ) となります。したがって、生存者の期待割合はS ( t ) です。異なる個体の生存が独立している場合、年齢tでの生存者数はパラメータnとS ( t ) を持つ二項分布に従い、生存者の割合の分散はS ( t ) × (1- S ( t ))/ nとなります。
生存者のうち特定の割合が残っている年齢は、方程式S ( t ) = q をtについて解くことで求められます。ここで、q は対象となる分位数です。通常、関心があるのは中央値寿命で、この場合q = 1/2 となります。また、 q = 0.90 やq = 0.99などの他の分位数も対象となります。
打ち切りとは、欠損データの問題の一種で、被験者全員が関心のある事象を示す前に研究が終了したり、被験者が事象を経験する前に研究から離脱したりするなど、様々な理由で事象発生までの時間が観測されない状態を指します。打ち切りは生存分析でよく見られます。
真のイベント発生時刻Tの下限値lのみが既知であり、 T > lである場合、これを右側打ち切りと呼びます。右側打ち切りは、例えば、生年月日は分かっているものの、追跡調査から脱落した時点や研究終了時点で生存している被験者に対して発生します。私たちは一般的に右側打ち切りデータに遭遇します。
関心のある事象が研究対象者が含まれる前にすでに発生しているが、いつ発生したかが不明な場合、データは左側打ち切りであると言われます。[ 24 ]事象が2つの観察または検査の間に発生したとしか言えない場合、これは区間打ち切りです。
左側打ち切りは、例えば永久歯の萌出分布を推定することを目的とした歯科研究の開始前に永久歯がすでに萌出している場合に発生します。同じ研究において、永久歯が現在の検査時には口腔内に存在しているが、前回の検査時にはまだ存在していなかった場合、萌出時間は区間打ち切りとなります。区間打ち切りは、HIV/AIDS研究でよく発生します。実際、HIV血清転換までの時間は、通常医師の診察後に開始される検査室評価によってのみ決定できます。したがって、HIV血清転換が2回の検査の間に起こったと結論付けるしかありません。臨床症状に基づいて診断され、医学的検査によって確認する必要があるAIDSの診断についても同様です。
また、ある閾値よりも寿命が短い被験者が全く観察されない場合もあります。これは切り捨てと呼ばれます。切り捨ては左側打ち切りとは異なります。左側打ち切りデータでは被験者の存在がわかっていますが、切り捨てデータでは被験者の存在がまったくわからない場合があるからです。切り捨てはよくあることです。いわゆる遅延エントリー研究では、被験者はある年齢に達するまで全く観察されません。たとえば、就学年齢に達するまで観察されない場合があります。就学前年齢の被験者が死亡した場合は、その存在はわかりません。左側切り捨てデータは、生命保険や年金の保険数理業務でよく見られます。[ 25 ]
左側打ち切りデータは、追跡期間の左側で生存時間が不完全になる場合に発生する可能性があります。たとえば、疫学の例では、感染症の検査で陽性となった時点から患者を感染症について監視することがあります。関心のある期間の右側はわかっているかもしれませんが、感染性病原体への曝露の正確な時間は決してわからないかもしれません。[ 26 ]
生存モデルは、応答変数が時間である通常の回帰モデルとして捉えると便利です。ただし、尤度関数(パラメータの適合や他の種類の推論を行うために必要な関数)の計算は、打ち切りによって複雑になります。打ち切りデータが存在する場合の生存モデルの尤度関数は、次のように定式化されます。定義により、尤度関数は、モデルのパラメータが与えられた場合のデータの条件付き確率です。パラメータが与えられた場合、データは独立であると仮定するのが一般的です。すると、尤度関数は各データの尤度の積になります。データを、打ち切りなし、左側打ち切り、右側打ち切り、区間打ち切りの 4 つのカテゴリに分割すると便利です。これらは、以下の式で「unc.」、「lc」、「rc」、「ic」と表記されます。
検閲されていないデータの場合、死亡時の年齢に等しいので、
左側打ち切りデータの場合、死亡時の年齢が以下であることがわかっている場合、 我々は持っています
右側打ち切りデータの場合、死亡時の年齢が以下であることがわかっている場合、 我々は持っています
死亡時の年齢が以下であることがわかっている区間打ち切りデータの場合そしてそれよりも大きい、 我々は持っています
区間打ち切りデータが発生する重要なアプリケーションは、イベントが発生する現在のステータスデータです。ある観測時刻より前には発生しておらず、次の観測時刻より前には発生していたことがわかっている。
カプラン・マイヤー推定量は、生存関数を推定するために使用できます。ネルソン・アーレン推定量は、累積ハザード率関数のノンパラメトリック推定値を提供するために使用できます。これらの推定量には、生涯データが必要です。定期的な症例数(コホート数)と死亡数(および回復数)は、生涯データがなくても、生存関数のノンパラメトリック最尤推定値および最小二乗推定値を算出するのに統計的に十分です。
多くのパラメトリックモデルは連続時間を仮定していますが、離散時間生存モデルは二値分類問題にマッピングできます。離散時間生存モデルでは、生存期間が人為的に間隔ごとに再サンプリングされ、各間隔で、特定の時間範囲でイベントが発生するかどうかの二値ターゲット指標が記録されます。[ 27 ]二値分類器(問題のより多くの構造を考慮するために異なる尤度で強化されている可能性があります)が較正されている場合、分類器スコアはハザード関数(つまり、故障の条件付き確率)になります。[ 27 ]

時間離散化を行い、データをこの長い形式で取得する代わりに、ビン分割された時間軸上で分布回帰を実行するという方法もあります。このアプローチでは、既にデータに適合させたネットワーク(表形式の基礎モデル)を活用することで、小規模なデータセットにも対応できます。
治癒モデルでは、一部の個人が対象となる事象を全く経験しない可能性も考慮に入れる。これにより、生存曲線は常にゼロに収束するのではなく、横ばい状態になる。
治癒モデルには2つの関連するコンポーネントがあります。
1.その事象を一度も経験しない確率に関するロジスティック回帰分析:
2. ハザードモデル 例:感受性が与えられた場合の、時刻 t における条件付きイベントハザードに対する離散時間ロジスティック回帰:
したがって、結合生存関数は
第一の用語:治癒した人々、つまり永久に生存する人々。
第二の用語:危険度に応じて生存率が低下する感受性の高い個体。
治癒モデルがない場合、生存率は時間の極限でゼロに収束します。治癒率がある場合、生存率は代わりに次の値に収束します。
Kleinbaumの教科書には、SAS、R、その他のパッケージを使用した生存分析の例が掲載されています。[ 6 ] Brostrom [ 31 ] 、 Dalgaard [ 10 ] 、TablemanとKim [ 32 ]の教科書には 、R(またはSを使用し、Rで実行される)を使用した生存分析の例が掲載されています。