イベントが起きるまでの時間とイベントの間の関係を調べる、生存時間解析。
生存時間解析を可視化する方法に、カプランマイヤー曲線があります。
また、生存時間解析での検定手法の一つが、ログランク検定です。
この記事では、統計解析ソフトJMPを用いた、カプランマイヤー曲線の作成方法と、ログランク検定の実施方法について、説明していきます。
別の統計解析ソフトEZRでの解析については
>>>EZRでカプランマイヤー曲線!ログランク検定や生存時間解析を実施
こちらの記事に記述しています。
JMPでカプランマイヤー曲線を作る!生存時間解析をするために必要となるデータ
JMPでも、EZRと同じで次の3種類のデータが必要です。
- 生存時間のデータ
- イベントか打ち切りかのデータ
- 群のデータ
JMPでカプランマイヤー曲線!サンプルデータから解析する
ここでは、JMP公式サイトを参考にしています。
JMPにはサンプルデータが最初からパッケージに含まれています。
[ヘルプ] > [サンプルデータライブラリー] をクリックします。
すると次のディレクトリが開きます。
この中から、「Rats.jmp」を開きす。
このデータは
2群に分けたラットを発ガン性物質にさらし、生存時間の差を調べる試験結果
と公式サイトには説明があります。
ダブルクリックすると、JMPでこのファイルを開きます。
ファイルの中身は次のようになっています。
- 1列目の「生存日数」が生存時間のデータ、
- 2列目の「打ち切りの有無」がイベントか打ち切りかどうかのデータ
- 3列目の「グループ」が群のデータに対応します。
EZRでは「打ち切りの有無」に関するデータは
- イベントは1であらわす
- 打ち切りは0であらわす
必要がありました。
しかし、このJMPのサンプルデータでは、イベントはFailedで、打ち切りはCensoredであらわされています。
JMPではイベントは1で、打ち切りは0であらわすこともできます。
ログランク検定の結果とともにカプランマイヤー曲線が出力される
次に解析を行っていきます。
[分析] > [信頼性/生存時間分析] > [生存時間分析]をクリックします。
これをクリックすると、次のウィンドウが出現します。
先ほど開いたJMPファイルから、それぞれに役割を割り当てていきます。
- [Y, イベントまでの時間]に「生存日数」を指定します。
- [グループ変数]に「グループ」を指定します。
- [打ち切り]に「打ち切りの有無」を指定します。
全て埋めると次のようになります。
最後に[OK]をクリックします。
すると、カプランマイヤー曲線と、ログランク検定などの結果が出力されます。
JMPでCSVデータを取り込んでログランク検定とカプランマイヤー曲線を作る!
今回も統計解析ソフトEZRと同様に、自治医科大学さんが提供していくださっているサンプルデータの中から
“Survival.csv”を使用して解説します。
各列の説明に関しては
>>>EZRでカプランマイヤー曲線!ログランク検定や生存時間解析を実施
こちらの記事を参照してください。
JMPでCSVファイルを読み込む
先ほどダウンロードしたファイルを読み込んでいきます。
[ファイル] > [開く]をクリックします。
すると、ファイルを選択するウィンドウが出現します。
先ほどの”Survival.csv”を選択します。
そうすると、サンプルデータと同じ、表のウィンドウが出現します。
この表で、ファイルの中身で解析に必要な列のデータは次のようになっています。
- 6列目の「DaysYoOS」が生存時間のデータ
- 5列目の「OS」がイベントか打ち切りかどうかを表すデータ
- 4列目の「Treatment」が群のデータ
にそれぞれ対応します。
JMPで生存時間解析を行い、ログランク検定とカプランマイヤー曲線を出力する
次に解析を行っていきます。
[分析] > [信頼性/生存時間分析] > [生存時間分析]をクリックします。
これをクリックすると、次のウィンドウが出現します。
先ほど開いたファイルから、それぞれに役割を割り当てていきます。
- [Y, イベントまでの時間]に「DaysYoOS」を指定します。
- [グループ変数]に「Treatment」を指定します。
- [打ち切り]に「OS」を指定します。
次第が終わったら、[OK]をクリックしてください。
すると、以下のウィンドウが出力されます。
これで完了です。
JMPではログランク分析以外に、一般化Wilcoxon検定の結果も出力されています。
有料ソフトなだけあって、非常に動作も安定していて使いやすいです。
JMPで累積発生率のカプランマイヤーを作成するには?
次に、累積発生率のカプランマイヤーを作成する方法をお伝えします。
カプランマイヤーといえば「左上からスタートして段々と右下に下がっていくグラフ」が一般的です。
ですが、時には「左下からスタートして段々と右上に上がっていくグラフ」を作成したい時もありますよね。
その作成方法をお伝えします。
先ほどの”Survival.csv”を使って出力したカプランマイヤー曲線があります。
その「Kaplan-Meier法によるあてはめ」の左にある赤い三角形を押します。
すると「故障率プロット」という部分をクリックします。
そうすると、生存分析プロット(左上からスタートして段々と右下に下がっていくグラフ)の下に故障率プロット(左下からスタートして段々と右上に上がっていくグラフ)が出力されました。
JMPのカプランマイヤー曲線に打ち切りを示す”ひげ”がない!?
JMPのカプランマイヤー曲線を見ると、”あるものが”表示されていないことがわかります。
それが”ひげ”ですね。
カプランマイヤー曲線の”ひげ”とは、”打ち切り”を示すデータのことです。
実は、現在のVer.のJMPには打ち切りを示すひげが表示されない仕様です。
しかし、JMP事業部のHPからスクリプトをダウンロードすることによって、ひげをつけることができます。
ただし、これから紹介するスクリプトはSAS社から提供されているサンプルであり、本スクリプトを使用して発生した問題に関しては各自でご対応くださいませ。
JMPでカプランマイヤーのひげをつけるスクリプトをダウンロードして使う方法
まずは、JMPのスクリプトを入手します。
JMP事業部のHPのトップページを表示させましょう。
https://www.jmp.com/ja_jp/home.html
そして、「サポート」>「FAQ(よくある質問)」を選択します。
Windowsなら「Ctrl+F」、Macなら「Command+F」でページ内検索を実施し「打ち切り」を検索しましょう。
すると「生存時間プロットで、線の色や太さを変更したり、打ち切りのデータにヒゲをつけることは可能ですか?というQuestionが出てくるため、クリックします。
1番下に「ヒゲ付き生存時間プロット2(zipファイル)」があるため、そこからダウンロードします。
ダウンロードしたら、Zipファイルを解凍して使える状況にします。
これでカプランマイヤー曲線にヒゲをつけるスクリプトの取得ができましたので、スクリプトを使ってカプランマイヤー曲線にヒゲをつけていきます。
まず、対象となるデータ(今回はサンプルデータのVA Lung Cancer)を開いた状態で「ヒゲ付き生存時間プロット2.jsl」を立ち上げます。
左上にある「スクリプトの実行」を選択。
「Y,イベントまでの時間」に生存日数を入れ、「グループ変数」に処置を入れ、「打ち切り」に打ち切りの有無を入れる。ヒゲの長さは1〜10まで選択できるが、ここではデフォルトで4のままにする。
そしてOKを選択するとヒゲのついたカプランマイヤー曲線が出力されました。
JMPでカプランマイヤー曲線まとめ
JMPで生存時間解析をするには次の手順で行います。
- [ファイル] > [開く]をクリックし、解析したいファイルを選択する
- [分析] > [信頼性/生存時間分析] > [生存時間分析]をクリックする
- 生存時間のデータ、イベントか打ち切りかのデータ、群のデータを割り当てる
- [OK]をクリックする
株式会社データシードは、SAS社のJMP事業部と提携しています。
統計解析担当者として10年間色々な統計解析ソフトを試した結果、本当に使いやすいと思ったのがJMPでした。
ぜひあなたもJMPの全機能を30日間試せるトライアル版で、データからさらなる情報を導き出せることを実感してください。
コメント
コメント一覧 (2件)
[…] >>JMPで生存時間解析を実施する方法 […]
[…] […]