ねこすたっと

ねこの気持ちと統計について悩む筆者の備忘録的ページ。

サンプルサイズ計算:2群の2値アウトカムを比較する(割合の差) [G*Power]

自分用のリファレンスとして、サンプルサイズ計算に関する記事をシリーズで書いています。 なるべく体裁を統一するために、以下のように決めています。

  • 群を示す添字について:
    • c, C = 対照群
    • t, T = 介入群*1
    • e, E = 要因群
    • 添字なし = 全体
  • 使用する記号:
    • p = 反応割合
    • μ = 平均値
    • σ = 標準偏差
    • Φ = 割り付け比 Nt/Nc(デフォルトは1)
    • α = αエラー(デフォルトは0.05)
    • β = βエラー(デフォルトは0.2)
    • z = 標準正規分布の累積分布関数

想定シナリオ

疾患Dに対する治療として、従来薬Cと新規薬Tのどちらが優れているだろうか?
ランダム化比較試験で患者を1:1に割り付けて、治療の奏功割合を比較したいと考えている。
これまでの知見から、従来薬Cにおける奏効割合は30%、新規薬Tにおける奏効割合は50%と見込まれる。
両側有意水準 5%, 検出力 80%として、必要なサンプルサイズはどれくらいだろうか?

このシナリオでサンプルサイズを計算するのに必要な条件を整理してみると、以下のようになる。

  • 帰無仮説  H_0: p_T = p_C
  • 対立仮説  H_A: p_T \neq p_C
  • 有意水準:α = 0.05
  • 検出力:1-β = 0.80
  • 割り付け比:φ =  N_T / N_C = 1
  • 従来薬Cの奏効割合(想定値): \hat{p}_C = 0.3
  • 新規薬Tの奏効割合(想定値): \hat{p}_T = 0.5

方法1:標準正規分布を使った検定(Z-test)をもとにして計算する

無料のサンプルサイズ計算ソフトG*Powerを使って計算する。 以下のように設定して右下の [Calculate] ボタンを押す。

  • [Test family]:"z test"を選択
  • [Statistical test]:"Proportions: Difference between two independent proportions"を選択
  • [Type of power analysis]:"A priori: ..."(= 与えられたαエラー、βエラー、効果サイズの条件下でサンプルサイズを計算する)を選択
  • [Input parameters]:
    • [Tail(s)]:ここでは "Two"(= 両側検定)を指定。
    • [Proportion p1, p2]:ここでは0.5と0.3を指定。入力ウィンドウが違っているときは、左下の [Option] ボタンで [Input] を "Use two proportion p1 / p2" に変更する。
    • [α err prob]:有意水準(=0.05)
    • [Power (...)]:検出力(=0.8)
    • [Allocation ratio N2/N1]:割り付け比(=1)

出力結果画面は下のようになる。1群あたり93例、両群で186例必要という結果。

方法2:χ2乗検定をもとにして計算する

方法1では標準正規分布を使った検定(Z-test)を想定してサンプルサイズ計算をした。 今回は偶現表でχ2乗検定を行うことを想定してサンプルサイズを計算する。*2

以下のように設定して右下の [Calculate] ボタンを押す。

  • [Test family]:"Exact"を選択
  • [Statistical test]:"Proportions: Inequality, two independent groups (unconditional)"を選択
  • [Type of power analysis]:"A priori: ..."を選択
  • [Input parameters]:
    • [Tail(s)]:ここでは "Two"(= 両側検定)を指定。
    • [Proportion p1, p2]:ここでは0.5と0.3を指定。入力ウィンドウが違っているときは、左下の [Option] ボタンで [Effect size index] を "Proportion p1"に変更する。
    • [α err prob]:有意水準(=0.05)
    • [Power (...)]:検出力(=0.8)
    • [Allocation ratio N2/N1]:割り付け比(=1)

出力結果画面は下のようになる。1群あたり93例、両群で186例必要という結果。

ちなみに、[Protocol of power analysis] を見てみると以下のとおり。

Exact - Proportions: Inequality, two independent groups (unconditional) 

Options:    large sample approx, z-test pooled

Analysis:   A priori: Compute required sample size 
Input:      Tail(s)                     =   Two
            Proportion p1               =   0.5
            Proportion p2               =   0.3
            α err prob                     =   0.05
            Power (1-β err prob)           =   0.8
            Allocation ratio N2/N1      =   1
Output:     Sample size group 1         =   93
            Sample size group 2         =   93
            Total sample size           =   186
            Actual α                       =   0.0500000
            Actual power                =   0.8000056

おわりに

  • サンプルサイズ計算するときは、信頼できる関数(あるいはアプリケーション)を1つ持っておくと安心できると思いました。

参考資料

  • 無料のサンプルサイズ計算ソフトG*Powerのトップページ。

www.psychologie.hhu.de

*1:interventionのIを使うと1と区別しにくいのでtrial

*2:実際にはこの2つの検定は等価なので、入口は違っても結果は同じになる。この他、オッズ比(ロジスティック回帰モデルの係数)をもとにしたサンプルサイズ計算もあるが、これについては別の記事で扱う予定。