生存時間解析におけるKaplan–Meier推定量とNelson–Aalen推定量の理論と実例による比較

>100 Views

January 27, 26

スライド概要

profile-image

SAS言語を中心として,解析業務担当者・プログラマなのコミュニティを活性化したいです

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

第12回大阪SAS勉強会 2026年01月28日 生存時間解析におけるKaplan–Meier推定量と Nelson–Aalen推定量の理論と実例による比較 株式会社ピープロ・ジャパン DM/統計解析グループ 牛尾 英孝 Ppro-Japan Co.,Ltd. 1

2.

免責事項 本発表で述べる意見や見解は, 演題発表者個人のものです. 所属する組織の意見を代表するものではありません. 2

3.

本演題の内容 生存時間解析は, 臨床試験をはじめとする実務で頻繁に用い られる解析手法であるが, SASによる実装では用いられている 推定量やその算出過程の違いが十分に意識されないまま使用 されることも少なくない. 本演題では, 生存時間解析における代表的な推定量である Kaplan-Meier推定量及びNelson-Aalen推定量について, 算出 過程の違いを実装例を交えて紹介する. 3

4.

本演題の内容 1 生存時間解析における推定量 2 SASによるKaplan-Meier推定 3 Kaplan-Meier推定量の計算過程 4 SASによるNelson-Aalen推定 5 Nelson-Aalen推定量の計算過程 6 両推定量の比較及びまとめ 4

5.

生存時間解析における推定量 生存曲線の推定 推定量 Kaplan-Meier推定量 説明変数なし Nelson-Aalen推定量 (Breslow推定量) 説明変数あり 生存時間Tに“指数分布” や“Weibull分布”のような 特定の確率分布を仮定し ない推定量. (本演題はこちらの内容) Cox比例ハザードモデル パラメトリックモデル 5

6.

生存時間解析の実施例 ✓全10例を対象者として生存時間解析を実施. ✓観察期間は時点1から時点10までとし, 各対象者について登録後から イベント発生または打ち切りまでの期間を追跡した. ✓時点2, 時点4ではそれぞれ1例のイベントが発生し, 時点6, 時点8, 時点10において2例のイベントが発生した. ✓イベントが確認される前に観察が終了した打ち切り例として, 時点5, 時点9でそれぞれ1例ずつに認められた. 6

7.

生存時間解析における実例 生存時間解析データ T イベント(d) 打ち切り 1 2 1 3 4 5 1 6 2 7 8 9 2 1 10 2 1 ※ 表中の数字は人数を表す ✓時点2, 時点4 ⇒ 1例のイベントがそれぞれ発生した. ✓時点6, 時点8, 時点10 ⇒ 2例のイベントがそれぞれ発生した. ✓時点5, 時点9 ⇒ 1例の打ち切りがそれぞれ認められた. 7

8.

生存時間解析における実例 ~サンプルSASデータセットの作成~ data surv; input id time status @@; label id = "Subject Identifier for the Study" time = "Time to Event or Censoring" status = "Event Indicator (1=Event, 0=Censored)"; datalines; 1 2 1 2 4 1 3 6 1 4 6 1 5 8 1 6 8 1 7 10 1 8 10 1 9 5 0 10 9 0 ; run; 8

9.

生存時間解析におけるKaplan-Meier推定量 proc lifetest data=surv method=KM plots=(survival(atrisk=(0 to 10 by 1))); time time*status(0); ods output Survivalplot=Survivalplot; run; proc sgplot data=Survivalplot・・・ ・・・ 「生存関数が0になる」というのは, 「その時点以降,生存している人は1人 もいない」ことを意味する. Kaplan– Meier推定では生存率が0になる=限 られたデータ(本例であれば10例) から「生存率0%(死亡100%)」と 断言してしまうことに? 9

10.

生存時間解析における Kaplan-Meier推定量~生存率~ Kaplan–Meier推定で「生存関数が0になる」場合は「観測され たデータの範囲内では, それ以降に生存が確認された症例が存 在しない」ということ. ただし, これは真の生存確率が0である ことを示しているわけではない. 限られたデータから「生存率0」と断言してしまうことは死亡 確率の誇張となる. 実際の臨床試験では, 途中で追跡不能(打 ち切り)がいたり, 観測期間が有限であったり「生存率が本当 に0」だと言い切れる状況は少ないと考えるのが妥当. 10

11.

生存時間解析における Kaplan-Meier推定量の計算過程① 各イベント発生時点において「当該時点まで生存している対象者におけるイベント 未発生の割合(1 − (イベント数/リスク集合の人数)」を求め, それを関心のある 時点Tまでに発生したすべてのイベント時点について順に掛け合わせたものが Kaplan–Meier推定量となる. T 1 イベント(d) 2 3 1 4 1 打ち切り リスク集合のサイズ(n) 5 6 2 7 8 2 1 10 10 9 9 10 2 1 9 例:T=2時点でのイベント未発生割合「1-(1/10)=9/10」 11

12.

生存時間解析における Kaplan-Meier推定量の計算過程② 生存時間解析データ T 1 イベント(d) 2 3 1 4 5 1 打ち切り 1 リスク集合のサイズ(n) 10 10 9 9 8 1-(d/n) 1 1-(1/10) 1-(0/9) 1-(1/9) 1-(0/8) Kaplan-Meier推定量 1 9/10 9/10 8/10 8/10 T=3における Kaplan–Meier推定量:1×(1-(1/10)×(1-(0/9))=9/10 T=4における Kaplan–Meier推定量:1×(1-(1/10)×(1-(0/9))×(1-(1/9))=8/10 T=5における Kaplan–Meier推定量:1×(1-(1/10)×(1-(0/9))×(1-(1/9))×(1-(0/8))=8/10 12

13.

生存時間解析における Kaplan-Meier推定量の計算過程の解釈 生存時間解析データ T 1 イベント(d) 2 3 1 4 5 1 打ち切り 6 7 2 8 9 2 1 10 2 1 リスク集合(n) 10 10 9 9 8 7 5 5 3 2 1-(d/n) 1 9/10 1 8/9 1 5/7 1 3/5 1 0 KM推定量 1 9/10 9/10 8/10 8/10 8/10 4/7 24/70 24/70 0 T=2の場合, (d/n)=1/10は(T=2)のハザードの推定量(P[T=2 | T≧2]) T=6の場合, KM推定量=1×(9/10)×1×(8/9)×1×(5/7) 13

14.

生存時間解析における Kaplan-Meier推定量の計算過程③ T KM推定量 1 2 3 4 5 6 7 8 9 10 1 9/10 9/10 8/10 8/10 8/10 4/7 24/70 24/70 0 1 0.9 0.9 0.8 0.8 0.8 0.571 0.3428 0.3428 0 proc lifetest data=surv method=KM plots=(survival(atrisk=(0 to 10 by 1))); time time*status(0); ods output Survivalplot=Survivalplot; run; Proc lifetestにて出力したデータセット「Survivalplot」内の Survivalの値にほぼ一致していることが確認できる. 14

15.

生存時間解析におけるNelson-Aalen推定量 proc lifetest data=surv method=nelson plots=(survival(atrisk=(0 to 10 by 1))); time time*status(0); ods output Survivalplot=Survivalplot_nelson; run; proc sgplot data=Survivalplot_nelson・・・ ・・・ Kaplan–Meier推定とは異なり Nelson-Aalen推定量は指数関数を 用いて算出するため,「生存関数が0 になる」ということはない. 15

16.

生存時間解析における Nelson-Aalen推定量の計算過程① Nelson–Aalen推定量とは「各イベント時点におけるイベント数÷リスク集合」を、 時間が進むにつれて足し合わせた累積値(累積ハザード)を元に算出される推定量 である. Nelson–Aalen推定量:exp(-(時点Tまでの累積ハザード)) T 1 イベント(d) 2 3 1 4 1 打ち切り リスク集合のサイズ(n) 5 6 7 2 8 2 1 10 10 9 9 8 9 10 2 1 7 5 5 3 2 T=2時点での累積値「(0/10)+(1/10)=1/10」 16

17.

生存時間解析における Nelson-Aalen推定量の計算過程② 生存時間解析データ T 1 イベント(d) 2 3 1 4 5 1 打ち切り 1 リスク集合のサイズ(n) 10 10 9 9 8 (d/n) 0 1/10 0/9 1/9 0/8 累積ハザード 0 1/10 1/10 19/90 19/90 Nelson-Aalen推定量 1 0.9048 0.9048 0.8096 0.8096 T=3における Nelson–Aalen推定量:exp(-(1/10))≒0.9048 T=4における Nelson–Aalen推定量:exp(-(19/90))≒0.8096 17

18.

生存時間解析における Nelson-Aalen推定量の計算過程の解釈 生存時間解析データ T 1 イベント(d) 2 3 1 4 5 1 打ち切り 6 7 2 8 9 10 2 1 2 1 リスク集合(n) 10 10 9 9 8 7 5 5 3 2 (d/n) 0 1/10 0 1/9 0 2/7 0 2/5 0 1 累積ハザード 0 1/10 1/10 19/90 19/90 313/ 630 313/ 630 565/ 630 565/ 630 1195/ 630 NA推定量 1 0.9048 0.9048 0.8096 0.608 0.608 0.408 0.408 0.150 0.8096 累積ハザード関数の推定量を生存関数S(t)=exp(-λ(t))にプラグインすることで算出される. 18

19.

生存時間解析における Nelson-Aalen推定量の計算過程③ T 1 NA推定量 1 2 3 4 5 6 0.9048 0.9048 0.8096 0.8096 0.608 7 8 9 10 0.608 0.408 0.408 0.150 proc lifetest data=surv method=nelson plots=(survival(atrisk=(0 to 10 by 1))); time time*status(0); ods output Survivalplot=Survivalplot_nelson; run; Proc lifetestにて出力したデータセット 「Survivalplot_nelson」内のSurvivalの値にほぼ一致して いることが確認できる. 19

20.

Kaplan-Meier vs Nelson-Aalen Kaplan-Meier:1 − (イベント数/リスク集合の人数※ ) ※十分に小さいとする Nelson-Aalen: exp(-(イベント数/リスク集合の人数)) exp(x)≒1+x+(x2/2!)+(x3/3!)+・・・より,以下の近似を考える. exp(-(イベント数/リスク集合の人数))≒(1-(イベント数/リスク集合の人数)) Nelson-Aalen推定量≒Kaplan-Meier推定量+(x2/2!)+(x3/3!)+・・・ Nelson-Aalen推定量の方がKaplan-Meier推定量よりも大きくなる 20

21.

Kaplan-Meier vs Nelson-Aalen 累積ハザード:(イベント数/リスク集合の人数) が最も大きくなる1/10の場合 exp(x)≒1+x+(x2/2!)において, (-0.1)×(-0.1)/2=0.005となるため,Kaplan-Meier推定量と Nelson-Aaren推定量の大小関係による影響はそれほど大きくはない. 数例程度の小規模試験であれば影響する場合もあるが, 数十例程度の 臨床試験の場合, 影響は少ない. 21

22.

まとめ ✓Kaplan–Meier推定量は, リスク集合における生存確率の積として生存 関数を推定するため, 生存関数が0になることがあるが, 確率という直 感的に解釈可能な量を得られる. ✓Nelson–Aalen推定量は, 累積ハザード関数を推定した後に指数関数を 用いるため, 生存関数は理論上0になることはない. 推定の対象が累積 ハザードであることから, 解釈のしやすさの点で実務上はKaplan– Meier推定量が広く利用されている. 22

23.

参考文献 – 【統計応用・医薬生物学】カプラン・マイヤー推定値とネルソン・アーレン推定値【統計検定1級対策】 https://nounai-librarian.com/2021-02-16-054154/(最終アクセス 2026/01/21) 浜田知久馬.『新版 実用SAS生物統計ハンドブック [SAS9.4 R3.2.0対応]』サイエンス社 (2017) 第9節 生存時間解析 23

24.

Thank you for your kind attention!! 株式会社 ピープロ・ジャパン DM/統計解析グループ 〒541-0041 大阪市中央区北浜2丁目2番22号 TEL:06-6121-2181 Fax:06-6121-6717 Mail:[email protected] https://p-pro.info/japan 24