R を使った生存曲線の描画: Kaplan-Meier

UB3/statistics/survival/survival_r

このページの最終更新日: 2023/02/14

  1. R を使った生存曲線の作成

広告

R を使った生存曲線の作成

このページ によると、R で生存時間分析に適したデータセットは以下の 3 つである。

  • MASS パッケージに含まれている gehan
  • survival パッケージに含まれている leukemia
  • survival パッケージに含まれている veteran

ここでは、veteran パッケージを使った例を示しておく。これは肺がん治療のデータを示したデータセットで、以下のような項目を含んでいる (2)。本当は 137 行あるが、1 から 10 行目のみ記載する。

Rのveteranデータセット
  • trt: 治療の種類。1 が standard (1-69 行)、2 が test (70-137 行)。
  • celltype: がん細胞の種類。
  • time: 生存時間。
  • status: 1 が打ち切りなし、0 が打ち切り。
  • karno: Karnofsky performance score
  • diagtime: 診断されてから clinical trial までの時間
  • age: 年齢
  • prior: Clinical trial 前の治療の有無。0 が治療なし、10 が治療あり。

trt, time, status のデータを使い、survfit 関数でプロットする。

test_fit <- survfit(Surv(time, status) ~ trt, data = veteran) plot(test_fit)


Rのveteranデータセット 生存曲線

描画データは test_fit$surv というカラムに保存されているので、これを表示すれば最終的な生存率が何%であったかを知ることができる。

グラフの見た目を少し改善。詳細は plot 関数のページ を参照のこと。

cols <- c("red", "blue")
labels <- c("Treatment 1", "Treatment 2")
plot(test_fit, main = "Kaplan-Meier of the veteran dataset", ylab = "Survival", xlab = "Survival time (days)", col = cols)
legend("topright", legend = labels, col = cols, lty = c(1, 1))


Rのveteranデータセット 生存曲線
広告

広告

References

  1. 佐藤弘樹、市川度. 2013.

生存時間解析 について平易に書いた数少ない解説書。

統計のなかでも、生存時間解析はそれだけで 1 冊の本になるほど複雑なわりに、ANOVAや t 検定などと違い使用頻度が低いため、とっつきにくい検定である。

この本では、とくに Kalpan-Meier 生存曲線、Log-rank 検定、Cox 比例ハザードモデルを重点的に解説しているが、prospective study と retrospective study, 選択バイアス、プラセボなど、臨床統計実験で重要な概念についても詳しい説明がある。臨床でない、基礎生物学の実験ではあまり意識しない重要な点であるので押さえておきたい。


  1. R で生存時間分析を行う. Link: Last access 2018/09/20.
  2. Veterans' Administration Lung Cancer study. Link: Last access 2021/07/05.
  3. Survival Analysis. Link: Last access 2022/11/12.

コメント欄

サーバー移転のため、コメント欄は一時閉鎖中です。サイドバーから「管理人への質問」へどうぞ。