統計ER

R, EZR, SPSS, KH Coder を使ったデータ分析方法を紹介するブログ。ニッチな内容が多め

ROC 曲線の比較に必要なサンプル数計算 平均値 標準偏差を用いる方法

ROC 曲線の比較に必要なサンプルサイズの計算方法の紹介

検査値の平均値と標準偏差を用いる方法

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


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

ROC 曲線の比較に必要なサンプル数計算の準備

R で ROC 曲線の比較に必要なサンプルサイズ計算をするための準備。

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

インストールは、一回だけでよい。

install.packages("pROC")

pROCパッケージを呼び出す。

これはソフトウェア起動時毎回。

library(pROC)

これで準備完了。

ROC 曲線の比較に必要なサンプル数計算のための前提

先行研究から、疾患あり・なし別の検査値 1 と検査値 2 、それぞれの平均と標準偏差が読み取れる場合の計算方法。

  • 疾患なしの、検査値 1 の平均が 7.54、標準偏差が 2.02
  • 疾患ありの、検査値 1 の平均が 14.7、標準偏差が 3.94
  • 疾患なしの、検査値 2 の平均が 1.36、標準偏差が 0.14
  • 疾患なしの、検査値 2 の平均が 1.53、標準偏差が 0.16

とする。

検査値 1 のArea Under the Curve(AUC)を 0.979、検査値 2 のAUCを 0.919 とする。

疾患あり、なし、それぞれの検査値 1 と検査値 2 の相関係数をともに 0.60 とする。

以上の前提を以下のように代入する。

mN.1 <- 7.54
sN.1 <- 2.02
mD.1 <- 14.7
sD.1 <- 3.94

mN.2 <- 1.36
sN.2 <- 0.14
mD.2 <- 1.53
sD.2 <- 0.16

AUC.1 <- 0.979
AUC.2 <- 0.919

rD <- 0.60
rN <- 0.60

平均と標準偏差を使って、パラメータを計算して、パラメータセットを準備する。

A.1 <- (mD.1 - mN.1)/sD.1
B.1 <- sN.1/sD.1

A.2 <- (mD.2 - mN.2)/sD.2
B.2 <- sN.2/sD.2

parameters <- list(A1=A.1, B1=B.1, A2=A.2, B2=B.2, rn=rN, ra=rD, delta=AUC.1-AUC.2)

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


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

ROC 曲線の比較に必要なサンプル数の計算結果

検出力80%、疾患あり:なしの比(kappa)を1:4にする。

このときに、以下のようなスクリプトを書くと計算される。

power.roc.test(parameters, power=0.80, kappa=4)

結果は以下の通り。

> power.roc.test(parameters, power=0.80, kappa=4)

     Two ROC curves power calculation 

         ncases = 67.93234
      ncontrols = 271.7294
      sig.level = 0.05
          power = 0.8

疾患あり68例、疾患なし272例、合計340例必要と計算された。

まとめ

ROC 曲線の比較に必要なサンプルサイズの計算を紹介した。

疾患あり、なし、それぞれにおいて、検査値 1 、検査値 2 の平均値と標準偏差が先行研究から得られる場合の計算方法である。

参考になれば。

関連記事

toukeier.hatenablog.com