Rでは、{survival}パッケージのsurvfit()関数を使用して作成したモデル オブジェクトを引数としてplot()関数を実行することでキャプランマイヤー曲線を描画することができる。
しかしながらこの方法では論文でよく見る number at riskのテーブルを表示することができない。これを達成するには有志が作成してWeb公開して下さっている関数を利用することになる。この目的に使用できる関数は2種類ある。
パッケージ紹介
(1) ggkm(),ggkmTable() : {ggplot}パッケージ依存
なお、ggkmTable()を使用するにはスクリプトを1箇所書き換える必要があった。ggkmTable()内の theme_text を element_textで書き換えた。

Kaplan-Meier plots using ggplots2 (updated)
About 3 years ago I published some code on this blog to draw a Kaplan-Meier plot using ggplot2. Since then, ggplot2 has been updated (from 0.8.9 to 0.9.3.1) and...
(2) kmplot() : {ggplot}パッケージ非依存
びいたまブログ
実行例
以下、同一のモデル オブジェクトに対して、上記両関数をデフォルトで実行した結果を示す。
library(survival) fit <- survfit( Surv(time, status) ~ rx, data=colon ) # ggkmTable()で描画 ggkmTable(fit) # kmplot()で描画 kmplot(fit)
ggkmTable()の出力
kmplot()の出力
デフォルトでの描画を見比べる限り、ggkmTable()の方が凝った出力を得られる。その分、依存するパッケージが多い。kmplot()はパッケージの追加インストールが必要ない点が素晴らしい。どちらを使用するかはお好みであろう。
コメント