MENU

【無料プレゼント付き】学会発表・論文投稿に必要な統計を最短で学ぶことができる無料メルマガ

R EZR でオッズ比の計算に必要なサンプルサイズを計算する方法

オッズ比のサンプルサイズ計算の方法


オッズ比計算のためのサンプルサイズ計算・検出力計算のための準備

EZRにepiR パッケージをインストールする。

Rスクリプト窓にinstall.packages(“epiR”)と書いて実行をクリック。

install.packages("epiR")

ダウンロード元を選ぶ。

Japanを選んでOKをクリック

インストール後の状態。

無事にインストールが終わるとこんな感じ

使うときは事前にlibrary()を実行する。

library(epiR)

オッズ比計算のサンプルサイズ計算・検出力計算するための関数は?

epi.sscc()という関数を使う。

設定できる変数は様々あるが、マッチしていない通常のオッズ比の場合、覚えるべきは、

  • OR(オッズ比)
  • p0(コントロールで曝露している人の割合)
  • n(ケースとコントロールの合計のサンプルサイズ)
  • power(検出力)
  • r(ケースを1としたときのコントロールの数)

の5つ。

epi.sscc(OR, p0, n, power, r = 1, rho.cc = 0, design = 1, sided.test = 2,
nfractional = FALSE, conf.level = 0.95, method = "unmatched", fleiss = FALSE)


オッズ比計算のサンプルサイズ・検出力を計算してみる

マッチしていない通常のデータで、オッズ比を計算するとして、想定オッズ比が1.5、コントロール群の曝露が3割、30%=0.3、検出力80%(慣例)、ケースとコントロールの比が1とすると、合計850人必要と計算される。

上記5つの要素のうち、求めたい要素を NA としておくことがこの関数の仕様である。

> epi.sscc(OR=1.5, p0=0.3, n=NA, power=0.8, r = 1)
$n.total
[1] 850
$n.case
[1] 425
$n.control
[1] 425
$power
[1] 0.8
$OR
[1] 1.5

サンプルサイズが1000例とすると、検出力は86%となる。

> epi.sscc(OR=1.5, p0=0.3, n=1000, power=NA, r = 1)
$n.total
[1] 1000
$n.case
[1] 500
$n.control
[1] 500
$power
[1] 0.8600573
$OR
[1] 1.5

ケースとコントロールの比を1:2とすると、ケースが321例、コントロールが642例の計963例必要と計算される。

ケースは少なくて済むが、全体のサンプルサイズは増える。

> epi.sscc(OR=1.5, p0=0.3, n=NA, power=0.8, r = 2)
$n.total
[1] 963
$n.case
[1] 321
$n.control
[1] 642
$power
[1] 0.8
$OR
[1] 1.5

合計サンプルサイズが1000例として、ケースとコントロールが1:2とすると、検出力は約81%になる。

1:1のときが86%なので、少し下がったが、それでも80%以上。

> epi.sscc(OR=1.5, p0=0.3, n=1000, power=NA, r = 2)
$n.total
[1] 1000
$n.case
[1] 334
$n.control
[1] 666
$power
[1] 0.8149441
$OR
[1] 1.5

まとめ

オッズ比のためのサンプルサイズ・検出力計算は、epiRパッケージのepi.sscc()関数を使う。

EZR で解説したが、R でも実行可能。

参考になれば。

参考文献

Package ‘epiR’

https://cran.r-project.org/web/packages/epiR/epiR.pdf

EZR公式マニュアル

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

この記事を書いた人

統計 ER ブログ執筆者

元疫学研究者

統計解析が趣味

コメント

コメントする

目次