Power Analysis 検定力の分析 13 July 2019

検定力(power/statistical power)は、第二種の過誤(type II error)の確率を β とすると1- β


仮説検定と検定力に関して(ここだけ 15 July 2019)

心理学の研究においての統計学的検定についてのガイドライン

研究を始める前に検定力を考え、サンプルサイズを決めておかなきゃいけないことはわかっているよね
研究がデータの取得から分析に移ったら、検定力ではなくて信頼限界(confidence interval)の記述をしましょう

いつ検定力の算出をすべき?

観察/実験計画時の検定力の算出はよいが、 観察/実験後の検定力の算出はよくないよ(flawed)

そもそも帰無仮説の有意差検定(だけ)ではよくない

そんなこと言われても……、という向きには

じゃ、どうしましょう?

例えば、 NatureStatistics for Biologists が役に立つ

This collection highlights important statistical issues that biologists should be aware of and provides practical advice to help them improve the rigor of their work.

https://www.nature.com/collections/qghhqm/pointsofsignificance


検定力(Power)について

帰無仮説が正しいのにも拘らず棄却することを第一種の過誤(Type I error) と言い、その確率を有意水準という。通常 α で表わす。生物学では有 意水準は5%にすることが多い。

帰無仮説が偽であるのにも拘らず採択することを第二種の過誤(Type II error)と言い、その確率を通常 β で表わす。ここで 1- β を検 定力(power)という。

有意差なし有意差あり
帰無仮説(H0)が真正しい判定第一種の過誤(Type I error)= α
帰無仮説(H0)が偽第二種の過誤(Type II error)= β正しい判定

 

統計的検定を行うにあたっては、有意かどうかの判定を有意水準(α) で見るが、有意かどうかはサンプルサイズ(観測数)に大きく依存する。

ことが知られている。 つまり、適切なサンプルサイズがないと(サンプルサイズが小さ過ぎると)、 棄却されるべき帰無仮説が採択されてしまうことがあり、 第二種の過誤(Type II error)が起こってしまう。

第二種の過誤(Type II error)が(それなりに)起こらなくなるよう サンプルサイズを十分取ればいいのだけれど、 (普通の人には直感でわからないので)その目安がほしくなる。 そこで、これこれ以上の観測数のデータを取ればよい、 との目安を知っておくのは重要になる。 この、必要なサンプルサイズがどれくらいかを算出するのが、 検定力の分析の基本になる。 このとき、検定力は 0.8 があればよいとする (Cohen 1988)。

一方、生物学の観察/測定データは、 あらかじめ観測数が決められないこともある*2。 つまり、観察した中で「これこれこういうこと」 が起きたときのデータのみを分析したいという計画にあたって、 「これこれこういうこと」がどれくらい起こるかは 予備観察/実験をしても大ざっぱにしかわからないので、 観察/実験前にはサンプルサイズは決定できない (検定力の分析によって算出したサンプルサイズにすることは厳密にはできない)。 検定結果が有意だった場合はよいとしても (よいとは言い切れないと考える人もいるけど……)、 帰無仮説が棄却された場合に有意差がなかったのは、 単にサンプルサイズが小さかったために生じた第二種の過誤かもしれない。 そこで、観察/実験後ではあるけれども、 その「これこれこういうこと」が起きたときを サンプルサイズ/観測数として用いて検定力を算出するのは、 第二種の過誤を見ていないかの目安になるだろう、 という考え方がある(意味がない、という人もいるらしい)。

ということで、このページでは、

の方法をメモしておく。

「有意差があったのだから差があると考えてよい」、 「検定力の分析からサンプルサイズは十分な大きさと考えられる」、 「有意差がなかったものに関して検定力を調べて問題なかったのだから差がないと考えてよい」 といった風に考えること自体が、 よくないかもしれないという考えもあるようですが、 ここで深くは立ち入りません。 95%の信頼限界も一緒に示しましょう、分布も示しましょう、と言う人もいますが、 複雑な関係を見るときには、 信頼限界や分布のグラフは意味をなさないほど訳がわからないこともあるので、 それぞれの場面で適切な対応をすべきと、ここではしておきます。 その適切な対応のひとつとして検定力の分析が必要なことはあるかもしれません。 検定を探索的に利用しているのか(差があるものを見付ける/差がないものを見付ける)、 何らかの操作をしたときに差が生じているのかを見ているのか、 によっても統計学的検定の扱いは変わるのではないかと思います。 何らかの操作をしたときは、保守的な検定で有意差があったなら、 その操作によって差が生じたと信じてよさそうに思いますが、 そんなノンビリした考えは今はあまり受け入れ難いのかもしれません。


経緯は

Reviewer から下のようなコメントをもらいまして……

Lastly, a power analysis may need to be done to state that there is no difference in copulation latency among samples, as there are far fewer data points for wingless flies, and overall far fewer data points than was obtained for the no-choice assays. A lack of statistically significant differences could be due to the smaller sample sizes and the subsequent lack of power to detect such differences.

「may need」と書かれているということは、 (「やってもやらなくてもどっちでもいいのよ〜ん」ではなく) 「やれ」と解釈すべきと判断しました。

Reviewer(↑)は、copulation latency(交尾までの時間)、つまり、 時間データ(カウントデータではない)の分析についてのみ 検定力の算出をするようコメントを書いていますが、 論文としては他の検定についての検定力の算出をしないのはヘンですよねえ、 と考えて、行った検定のほとんどについて、 検定力を算出することにしました。

検定力の算出においては、Cohen (1988) Statistical Power Analysis for the Behavioral Sciences, 2nd Edition (Lawrence Elrbaum Associates, Hillsdale, NJ) を参照し*3、計算は R を利用しました。

Cohen (1988) は、どのくらいの差が検出できればいいかしらん、 という「程度」を「effect size (ES)」と呼び、 目安として大中小を提案しています。 そして、large effect size(大きな差)、medium effect size (中くらいの差)、weak effect size(小さな差) が検出できるときのパラメータ(effect size index)を記述し、 かつ、そのときのサンプルサイズがどうなるかを表にしています。 とても有り難いのだけれど、その一方、表を読み取るのは面倒だし、 間違えやすいしで。そこで、R の pwr package や計算やらを使うと、 かなり容易にサンプルサイズまたは検定力(1-β)が得られます。

Cohen (1988) の size effect index と検定力の算出/サンプルサイズの算出

R の pwr package では、検定力かサンプルサイズの一方を入れれば、 もう一方が算出される。 なお、pwr.○○.test() の出力結果では、$power に検定力が格納される。 サンプルサイズを得るときは、こうしたいとの考えがないのならば、 Cohen (1988) に従い、power = 0.8 とすればよい。 有意水準を変更するなら sig.level= α を追加すればよい。

カイ二乗検定 Chi-square test

2 × 2 contingency table のみです。

large effect sizew=0.5
medium effect sizew=0.3
weak effect sizew=0.1

large effect size のときの検定力の算出

library(pwr)
pwr.chisq.test(w = 0.5, N = カウントの合計, df = 1)
pwr.chisq.test(w = 0.5, N = カウントの合計, df = 1)$power
pwr.chisq.test(w = 0.5, power = 0.8, df = 1)

2つの比の比較 Differences between proportions

large effect sizeh=0.8
medium effect sizeh=0.5
weak effect sizeh=0.2

nが等しい場合:large effect size のときの検定力の算出

library(pwr)
pwr.p.test(h=0.8, n=サンプルサイズ)
pwr.p.test(h=0.8, n=サンプルサイズ)$power
pwr.p.test(h=0.8, power=0.8)

nが異なる場合:large effect size のときの検定力の算出

library(pwr)
pwr.2p2n.test(h = 0.8, n1 = ひとつめのn, n2 = ふたつめのn) 
pwr.2p2n.test(h = 0.8, n1 = ひとつめのn, n2 = ふたつめのn)$power
pwr.2p2n.test(h = 0.8, n1 = 一方のn、power=0.8)

符号検定 sign tet

符号検定では effect size index(g)は他の検定と違って単純で、 0.5 からの差を示している (Cohen 1988)。つまり、 0.5 ± g の範囲を外れているのが真の場合に、 第二種の過誤で採択する確率を算出するということになる。

large effect sizeg=0.25
medium effect sizeg=0.15
weak effect sizeg=0.05

pwr package の pwr.p.test() も似ているけれども、これは分布を仮定してい る模様なので、よくないと判断。

large effect size のときの検定力の算出
Cohen (1988) に従い、母確率が 0.5 で、 0.25以下または0.75以上の二項確率として β を求め、 1-β を検定力とすればよい。 ここで、母確率が 0.5 の二項分布は 0.5 を中心に左右対称なので、 0.25以下の二項確率の2倍が β である。 検定力を「小さめに」(conservative に)見積るために、0.25 の割合は切り 上げ(大きめ)にして、β が大きくなるようにしてある。

1-2*pbinom(q=ceiling(サンプルサイズ/4), size=サンプルサイズ, prob=0.5)

分散分析 ANOVA (Analysis of Variance)

large effect sizef=0.4
medium effect sizef=0.25
weak effect sizef=0.1

Balanced ANOVA (各カテゴリで観測数が同数)の場合
large effect size のときの検定力の算出

library(pwr)
pwr.anova.test(f=0.4,  k=カテゴリの数, n=観測数/カテゴリ)
pwr.anova.test(f=0.4,  k=カテゴリの数, n=観測数/カテゴリ)$power
pwr.anova.test(f=0.4,  k=カテゴリの数, power=0.8)

各カテゴリで観測数が異なる場合、 (生物学ではよくあることだが……) n には(調和)平均を使うといいとかよくないとかあるらしいのだけど、 よくわからない。

t検定 t test

large effect sized=0.80
medium effect sized=0.50
weak effect sized=0.20

各群のサイズ(観測数)が同数の場合
ここの n は各群のサイズで、合計ではない

library(pwr)
pwr.t.test(d=0.8, n=30)
pwr.t.test(d=0.8, n=30)$power
pwr.t.test(d=0.8, power=0.8)

各群のサイズ(観測数)が異なる場合

library(pwr)
pwr.t2n.test(d=0.8, n1 = ひとつめのn, n2 = ふたつめのn)
pwr.t2n.test(d=0.8, n1 = ひとつめのn, n2 = ふたつめのn)$power
pwr.t2n.test(d=0.8, n1 = 一方のn, power=0.8)

相関係数 correlation coeffient

2つの相関係数が有意に違うかどうかの検定ではなく、 今得られた相関係数が 0 (ゼロ)と違いがあるかどうかの検定がしたい。

この場合は Cohen (1988) の Chapter 4 の中の分類の Case 2 に相当するのだけれど、 そのパラメータ q がいくつなのか、 相当する r がいくつなのか明確には書かれていない (いろいろと読み取ればよいのだろうけれど、 これはこうだと単純な書き方になっていない)。 そこで、Chapter 9 の重回帰、重相関の R*4 の部分を読むと、r ならこれこれと書いてある*5

large effect sizer = 0.5
medium effect sizer = 0.3
weak effect sizer = 0.1

R の pwr.r.test() では、effect size をパラメータとして取らず、 相関係数(r)をパラメータとして取る。 これは Cohen (1988) を読む限りは、 このほうがユーザが指定を間違えずに済むので、 他の関数とパラメータの取り方が矛盾しているとか面倒とかではなく、 エラー防止であると解釈できる。 このあたりは pwr package の作者はよくわかっていると感じます。

large effect size のときの検定力の算出

library(pwr)
pwr.r.test(n=サンプルサイズ, r=0.5)
pwr.r.test(n=サンプルサイズ, r=0.5)$power
pwr.r.test(power=0.8, r=0.5)
Today:5Yesterday:7Total:9050 since 13 July 2019

*1 1980年前後! 子供の頃に小説を読んだけど、背景がわからなさ過ぎて笑うポイントがわからなかった。今読んでも同じかもしれない
*2 ワタシは他の分野についてのコメントはできません
*3 ぼくにはとても読みづらいと感じました。「この場合のときは」というのがはっきりと書かれていないところというか、途中にこんな場合もあるようにとの例示があったりとか。
*4 統計パッケージではない(笑)。1988年はまだ統計パッケージの R は生まれていない
*5 面倒な本である……

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 15 Jul 2019 (月) 14:28:53 (1718d)