はじめに

生存時間解析は、医薬統計・臨床試験・疫学研究などで広く用いられる重要な手法です。その中でも最も基本となるのが カプラン–マイヤー(Kaplan–Meier: KM)法です。本記事では、SAS と R による実装、実データを用いた結果の読み方、SAS と R の違い・メリット・デメリットを、図解を交えながらわかりやすく紹介します。

カプラン–マイヤー法とは

KM 法は、生存時間データに含まれる 打ち切り(censoring) を適切に扱いながら、生存関数 S(t) を推定する方法です。

生存関数の定義

生存関数 S(t) は「時刻 t まで生存している確率」を表します。

KM 推定量は次の積の形で表されます:

\[S(t)=\prod _{t_i\leq t}\left( 1-\frac{d_i}{n_i}\right)\]

  • \(t_i\):イベント(死亡など)が起きた時点
  • \(d_i\):その時点でのイベント数
  • \(n_i\):その直前まで生存していた人数
  • 死亡が起きるたびに生存曲線が階段状に下がる
  • 打ち切りは人数から除外されるが、生存曲線は下がらない

実データの準備

以下のような簡単なデータを用いて、SAS と R の両方で KM 曲線を作成します。

IDtimestatustrt
151A
280A
3121A
441B
560B
6101B
  • time:生存時間
  • status:1=イベント発生、0=打ち切り
  • trt:治療群(A/B)

SAS による KM 推定と KM 曲線

SAS プログラム(PROC LIFETEST

data kmdata;
input id time status trt $;
datalines;
1 5 1 A
2 8 0 A
3 12 1 A
4 4 1 B
5 6 0 B
6 10 1 B
;
run;

proc lifetest data=kmdata plots=survival(cb=hw test);
time time*status(0);
strata trt;
run;

  • time time*status(0);
    → status=0 を打ち切りとして扱う
  • strata trt;
    → 群別 KM 曲線を描く
  • plots=survival(cb=hw test)
    → 生存曲線+信頼区間+ログランク検定
解釈
  • A 群の方が曲線が上にある → 生存率が高い傾向
  • ログランク検定 p 値が 0.20 程度なら
    → 有意差はないが、傾向は見られる
  • 信頼区間が広い → サンプルサイズが小さいため推定の不確実性が大きい

R による KM 推定と KM 曲線

R プログラム(survival + survminer

library(survival)
library(survminer)

kmdata <- data.frame(
id = 1:6,
time = c(5,8,12,4,6,10),
status = c(1,0,1,1,0,1),
trt = c(“A”,”A”,”A”,”B”,”B”,”B”)
)

fit <- survfit(Surv(time, status) ~ trt, data = kmdata)

ggsurvplot(
fit,
data = kmdata,
conf.int = TRUE,
pval = TRUE,
risk.table = TRUE
)

解釈
  • pval=TRUE → 図の上にログランク検定 p 値が表示
  • risk.table=TRUE → 各時点のリスクセット人数が表示
  • conf.int=TRUE → 信頼区間が帯状に表示

R の KM 図は視覚的に非常に美しく、論文・報告書向けの品質が高いです。

SAS と R の違い・メリット・デメリット

観点SASR
操作性手順が明確で安定パッケージが豊富で柔軟
グラフの美しさ標準ではシンプルsurvminer で非常に美しい
再現性製薬業界で標準的バージョン差に注意
規制対応FDA/PMDA 対応で強い近年は R も受容されつつある
コスト高額無料

SASのメリット・デメリット

  • 製薬企業での実績が圧倒的
  • PROC LIFETEST の出力が規制当局向けに整っている
  • グラフのカスタマイズ性が低い
  • ライセンス費用が高い

Rのメリット・デメリット

  • 作成できるグラフがきれいである
  • 無料で使える
  • パッケージが豊富
  • パッケージ依存が強く、標準化が難しい
  • バージョン管理が必要
実務での使い分け
  • 規制当局提出用の解析
    → SAS が依然として主流
  • 探索的解析・可視化・論文化
    → R の survminer が圧倒的に便利
  • 両方使えると最強
    → 製薬業界では SAS + R のハイブリッドが標準になりつつある

まとめ

カプラン–マイヤー法は、生存時間解析の中でも最も基本的でありながら、臨床試験・疫学研究・医療統計の現場で欠かせない手法です。本記事では、KM 法の考え方から始まり、SAS と R を用いた実装方法、実データを使った結果の読み方、そして両者の違いやメリット・デメリットまでを体系的に紹介しました。
SAS は規制当局対応や再現性の高さに強みがあり、製薬企業での標準的な解析環境として信頼されています。一方、R は柔軟な可視化や豊富なパッケージにより、探索的解析や論文化において非常に強力です。両者は競合関係ではなく、目的に応じて使い分けることで、より質の高い解析が可能になります。
KM 曲線は単なる生存率の推定にとどまらず、治療効果の傾向を直感的に把握し、次の解析ステップ(Cox 回帰、RMST、サブグループ解析など)へつなげる重要な役割を果たします。SAS と R の両方を理解しておくことで、実務でも研究でも、より説得力のある生存時間解析を行えるようになります。
生存時間解析の第一歩として、ぜひ本記事の内容を実務や学習に活かしていただければ幸いです。

参考書籍

生物統計ハンドブック
ABOUT ME
tomokichi
外資系製薬会社で生物統計家として働ている1児のパパ。生物統計家とは何か、どのようなスキルが必要か、何を行っているのかを共有していきたいと思っております!生物統計に関する最新情報を皆様にお届けすべく、日々奮闘中です。趣味は筋トレ、温泉巡り、家族と散歩。