アンケート調査には何人以上必要か
アンケート調査には何人以上必要か 無限母集団の場合
よくある質問。
「アンケート調査は何人にとったらよいでしょうか。」
「世論調査のサンプル数は本当に意味があるのでしょうか。」
「視聴率調査のサンプル数はどうやって決めているのでしょうか。」
アンケート調査とは、大体において割合が計算される。
何々について賛成か反対か?
賛成の割合が何%、反対が何%など。
だから、割合を見積もるサンプル数計算が適切。
母集団の割合を推定するサンプル数計算は二通りある。
推定精度から見積もる方法と、検定から見積もる方法がある。
検定から見積もる方法は、比較する相手、つまり母集団の割合が必要で、それは通常不明。
ゆえに、推定精度から見積もるのが無難だ。
実は、Yesと回答する割合が50%と考えた時が、もっともサンプルサイズが大きくなる。
もっとも無難なのは、割合が50%となると想定して、最大のサンプル数を計算しておくことだ。
R でスクリプトを書くと以下のようになる。
inf.pop.prop.samplesize <-
function(p=NULL, delta=NULL, conf.level=0.95){
n <- qnorm((1-conf.level)/2, lower.tail=F)^2*p*(1-p)/delta^2
METHOD <- "Sample size estimated (infinite population)"
structure(list("Sample size needed"=n,
"Population proportion"=p,
"Diff. b/w mean to limit"=delta, "Confidence level"=conf.level,
method=METHOD), class="power.htest")
}
例えば、割合が50%で、推定精度である95%信頼区間が±5%となるように、サンプル数の計算をすると、以下のようになる。
inf.pop.prop.samplesize(p=0.5, delta=0.05)
結果は385人必要と出る。
> inf.pop.prop.samplesize(p=0.5, delta=0.05)
Sample size estimated (infinite population)
Sample size needed = 384.1459
Population proportion = 0.5
Diff. b/w mean to limit = 0.05
Confidence level = 0.95
上記の記事のスクリプトを使って計算してみる。
myPsize <- function(p,delta){
n <- 4*(1-p)/(p*delta^2)
c("N at least"=n)
}
myPsize(p=0.5, delta=0.1)
こちらのdeltaは相対精度なので、50%に対して±5%は、相対精度±10%だ。
結果は400例と計算された。
> myPsize(p=0.5, delta=0.1)
N at least
400
ちょっとずれたが、おおよそ同じ結果だ。
二項分布で確認してみると、95%信頼区間は、確かに45%~55%であるのがわかる。
> binom.test(round(385*0.5), 385)
Exact binomial test
data: round(385 * 0.5) and 385
number of successes = 192, number of trials = 385, p-value = 1
alternative hypothesis: true probability of success is not equal to 0.5
95 percent confidence interval:
0.4476347 0.5497880
sample estimates:
probability of success
0.4987013
例えば、視聴率調査は300世帯を用いているが、その時の妥当性を考えてみると、視聴率25%を±5%で推定するためには、289世帯でよいという結果になる。
なので、300世帯で十分なのだ。
> inf.pop.prop.samplesize(p=0.25, delta=0.05)
Sample size estimated (infinite population)
Sample size needed = 288.1094
Population proportion = 0.25
Diff. b/w mean to limit = 0.05
Confidence level = 0.95
念のため二項分布で確認すると、95%信頼区間は20%~30%となっている。
> binom.test(round(289*0.25), 289)
Exact binomial test
data: round(289 * 0.25) and 289
number of successes = 72, number of trials = 289, p-value < 2.2e-16
alternative hypothesis: true probability of success is not equal to 0.5
95 percent confidence interval:
0.2003403 0.3031545
sample estimates:
probability of success
0.2491349
アンケート調査には何人以上必要か 有限母集団の場合
次によくある質問として、
「全体何人のうち何人にアンケート調査をしたらよいのでしょうか。」
というもの。
有限母集団のサンプル数計算。
全体何人のうち、何人調査したらいいかという質問に対する、R のスクリプトは以下の通り。
finite.pop.prop.samplesize <-
function(p=NULL, delta=NULL, N=NULL, conf.level=0.95){
n <- N/((delta/qnorm((1-conf.level)/2, lower.tail=F))^2
*((N-1)/(p*(1-p)))+1)
METHOD <- "Sample size estimated (finite population)"
structure(list("Sample size needed"=n,
"Popluation proportion"=p, "Diff. b/w mean to limit"=delta,
"Confidence level"=conf.level, method=METHOD),
class="power.htest")
}
有限母集団が30,000人として、母比率0.5、推定精度が95%信頼区間を±0.05とすると、380人必要と計算される。
> finite.pop.prop.samplesize(p=0.5, delta=0.05, N=30000)
Sample size estimated (finite population)
Sample size needed = 379.3016
Popluation proportion = 0.5
Diff. b/w mean to limit = 0.05
Confidence level = 0.95
先ほどの無限母集団の385人から5人減った。
母集団が30,000人となると無限母集団と大して変わらないことがわかる。
母集団のサイズを100分の1の300人にすると、169人でよくなる。
> finite.pop.prop.samplesize(p=0.5, delta=0.05, N=300)
Sample size estimated (finite population)
Sample size needed = 168.6957
Popluation proportion = 0.5
Diff. b/w mean to limit = 0.05
Confidence level = 0.95
ただし、母集団がたったの300人しかいないのに、169人を集めるには相当の苦労が必要になる。
逆に、この小さい母集団にしか適用できない結果は、どういう意味合いか?
意味合いが限定される。
300人の母集団にしか関係のない話に使う場合にはとてもよい。
300人全員をサンプリングしなくても169人だけでいいのだから。
アンケート調査には何人以上必要かをエクセルで計算
エクセルでサンプルサイズ計算する方法をお探しならこちらの記事の最下段を参照。
まとめ
「アンケート調査は何人からとったらいいか?」という質問には、約400人と答えるのが無難なのが判明した。
母集団のサイズが小さめで、わかっていれば、必要サンプルサイズは小さくなる。
コメント
コメント一覧 (1件)
[…] アンケート調査には何人以上必要か R で計算する方法 アンケート調査には何人以上必要か アンケート調査には何人以上必要か […]