MENU

EZR で時間依存型 ROC 曲線 を比較する方法

EZR では、時間依存型 ROC 曲線の曲線下面積を求めることができる

では、2 つの時間依存型 ROC 曲線の曲線下面積を比較することはできるだろうか?

>>もう統計で悩むのは終わりにしませんか? 

↑期間・数量限定で無料プレゼント中!

目次

時間依存型 ROC 曲線とは

時間依存型 ROC 曲線とは、生存時間イベントデータを予測する連続データのカットオフを求めたり予測性能を示す曲線である

EZR では、統計解析 → 検査の正確度の評価 → 生存期間に対する ROC 曲線解析 で実行できる

以下のように、変数を設定して、解析する

生存率を評価するポイントが必要になる(例では、365 日としている)

結果として、以下のような出力とグラフが得られる

2 つの検査値などの連続データがあって、どちらが優れているか比較したい場合は、どのようにすればよいか?

2 つの時間依存型 ROC 曲線を比較するための準備

EZR のメニューからは、できないが、timeROC パッケージをインストールして、timeROC と compare という関数を使うと比較できる

まずは、timeROC パッケージをインストールする

R スクリプト枠に以下を書いて、実行ボタンをクリックする

install.packages("timeROC")

すると、以下のような細長いウィンドが出てくるので、Japan (Yonezawa) を選択して、OK をクリックするとインストールが完了する

このインストールは今回だけ 1 回だけでよい

次に、timeROC パッケージを呼び出すために、以下の一行を実行する

library(timeROC)

これで準備が整った

>>もう統計で悩むのは終わりにしませんか? 

↑1万人以上の医療従事者が購読中

2 つの時間依存型 ROC 曲線を比較する方法

まず、データを用意する

使用する連続データや生存時間データに欠損があると計算できないため、欠損がある症例を削除する

アクティブデータセット → 欠損値の操作 → 欠損値をひとつでも含む行を削除する を使うと削除できる

次に、時間依存型 ROC 曲線を計算する

データセットの名前が Dataset だとする

このとき、以下のように R スクリプト枠に書いて、実行する

T が時間、delta がイベント変数、marker が予測変数、cause がイベント変数のカテゴリのうちどの数値がイベントを表しているか、times は ROC 曲線を書く時点、iid は 2 つの ROC 曲線を比較する場合は TRUE にする

timeROC1 <- timeROC(T = Dataset$time, delta = Dataset$status01, marker = Dataset$wt.loss, cause = 1, times = 365, iid=TRUE)
plot(timeROC1, time=365)

この 2 行を実行すると、以下のような図が描ける

先ほどの図と同じになる(計算式が違うのか若干違うように見える)

2 つ目の ROC 曲線も同様なスクリプトを書いて実行する

timeROC2 <- timeROC(T = Dataset$time, delta = Dataset$status01, marker = Dataset$meal.cal, cause = 1, times = 365, iid=TRUE)
plot(timeROC2, time=365)

グラフ以外の結果は、以下のように、結果を格納したオブジェクト名 timeROC1, timeROC2 をそれぞれ実行すると表示される

timeROC1
timeROC2

timeROC1 は、AUC が、50.96 % であることがわかる

timeROC2 は、AUC が、47.48 % であることがわかる

比較するには、以下のように compare 関数を使う

compare(timeROC1, timeROC2)

結果は、p 値は統計学的有意ではなく(p = 0.672)、timeROC1 と timeROC2 が異なるとは言えなかった

confint を使うと、95 % 信頼区間も計算できる

confint(timeROC1)
confint(timeROC2)

CI_AUC が、通常の 95 % 信頼区間

CB_AUC は、ブートストラップ法で求めた信頼区間

C.alpha は、ヘルプ(下記)によると、「(ブートストラップ)シミュレーションによって推定された、同時信頼区間幅計算のために必要な値」とのこと(理解するには、timeROC の論文を読む必要があるのかもしれない)

C.alpha : a numeric value corresponding to the quantile required for simultaneous confidence band computation (estimated by simulations).

まとめ

生存時間データを検査値などの連続データで予測する時間依存型 ROC 曲線分析結果を比較したい場合、どのようにするか紹介した

timeROC パッケージを追加でインストールすることで、EZR で解析可能である

参考になれば

参考サイト

時間依存性ROC曲線法 – データサイエンティスト上がりのDX参謀・起業家

参考文献

時間依存型 ROC 曲線とその応用

timeROC の引用文献

Estimating and comparing time-dependent areas under receiver operating characteristic curves for censored event times with competing risks

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

リサーチクエスチョン探し?データ分析?論文投稿?、、、で、もう悩まない!

第1章臨床研究ではなぜ統計が必要なのか?計画することの重要性
  • 推定ってどんなことをしているの?
  • 臨床研究を計画するってどういうこと?
  • どうにかして標本平均を母平均に近づけられないか?
第2章:研究目的をどれだけ明確にできるのかが重要
  • データさえあれば解析でどうにかなる、という考え方は間違い
  • 何を明らかにしたいのか? という研究目的が重要
  • 研究目的は4種類に分けられる
  • 統計専門家に相談する上でも研究目的とPICOを明確化しておく
第3章:p値で結果が左右される時代は終わりました
  • アメリカ統計協会(ASA)のp値に関する声明で指摘されていること
  • そうは言っても、本当に有意差がなくてもいいの…?
  • なぜ統計専門家はp値を重要視していないのか
  • 有意差がない時に「有意な傾向があった」といってもいい?
  • 統計を放置してしまうと非常にまずい
第4章:多くの人が統計を苦手にする理由
  • 残念ながら、セミナー受講だけで統計は使えません。
  • インプットだけで統計が使えない理由
  • どうやったら統計の判断力が鍛えられるか?
  • 統計は手段なので正解がないため、最適解を判断する力が必要
第5章:統計を使えるようになるために今日から何をすれば良いか?
  • 論文を読んで統計が使えるようになるための5ステップ
第6章:統計を学ぶために重要な環境
  • 統計の3つの力をバランスよく構築する環境

以下のボタンをクリックして、画面に出てくる指示に従って、必要事項を記入してください。

この記事を書いた人

統計 ER ブログ執筆者

元疫学研究者

統計解析が趣味

コメント

コメントする

目次