統計ER

統計ソフトRの使い方を中心に、統計解析方法の解説をするブログ。ありそうでなかなか見つからないサンプルサイズ計算などニッチな方法について紹介しています。

アンケートは何人に取ればいい? エクセルでサンプルサイズ計算!

kaiseki daiko banner

アンケート調査は何人にとったらいいか?

何度も聞かれる質問だ。

そんなざっくりした質問じゃ計算できないのだが、 そういう固いことは言わないのが統計ER。 何とかして手当てするのが統計ER。

アンケート調査は何人にとったらいいのか?をもう一度考えてみた。前回の検討は以下の通り。

toukeier.hatenablog.com

アンケート調査はそもそも何がしたいのか?

アンケート調査に必要なサンプルサイズを考える前に、 質問者は、そもそも、何をどういうふうにしたいのかを想像してみる。

「アンケート調査に必要なサンプルサイズの計算」といった場合、

  • 何人の人にアンケートをすれば、真実がわかるのか?
  • 何人だったら十分なのか?
  • 何人の時に統計学的に意味があるのか?
  • 何人ならケチがつけられないか?

ということが想像される。

サンプルサイズ計算には前提が必要だ。

質問者が無意識に考えている前提を想像してみる。

例えば、アンケート調査では、何かに対する好みを尋ねることがある。

○○は好きですか?Yes No

Yesの割合が何パーセント。

こういうことが知りたいのではないか?

でも、こんな単純な質問一つではないだろう。

おそらく数問から十数問を尋ねたいのではないか?

そこからサンプルサイズを求めてくれと言っているのではないか?

こんなふうにも想像する。

しかし、あまり複雑な前提は考慮できないのが現実だ。

考慮できる前提は、 一問だけで、 YesかNoかの二択だけで、 何%かをどれだけ正確に把握するかの精度か、 何%かどうかを検定する方法から推定する。

母集団の割合はわからないから 何%かどうかの検定を前提にするのはほぼ不可能。

まったく予想がつかないから、 超漠然とした質問になっているわけなので、 検定を前提にすることはまずない。

なので推定精度から推測するしかない。

いずれにしても、こういう単純な前提でしか、 アンケート調査のサンプルサイズ計算はできない。

年代別、性別などの集計も前提に入っていないので、 層別の分析をするなら、計算された人数の数倍にしておくのがいい。

とにかく、統計学には限界がある。

限界があることを知るのは重要だ。

統計学は魔法じゃないし、錬金術でもない。

アンケート調査のサンプルサイズの具体的な計算方法

計算上、50%をある精度で推定するのが、 必要なサンプルサイズがもっとも大きくなる。

一番大きいサンプルサイズを計算しておけば、 それより小さいサンプルサイズが必要な割合も、 同じかそれ以上の精度で見積もれるので、 大きくしておくのがいい。

控えめな見積もりという。

たくさんデータがあれば、あとは何とかなるから。 少ないと、もっととればよかったと後悔することになるから。

「50%のYesを±5%で見積もる」という前提はよくあるパターン。

無難な設定。根拠は特にない。 なので、万全な計算で、 突っ込まれたくないという希望には 答えられないのでそこは申し訳ない。

精度の±5%は、95%信頼区間の幅。

計算式を書いてみると、以下の通り。

 \displaystyle n = Z_{1-\alpha/2}^{2}\frac{p(1-p)}{\delta^{2}}

\alpha有意水準、今回の場合は0.05。

Zは標準正規分布のクォンタイルで今回は1.96。

toukeier.hatenablog.com

pは推定割合で、今回は0.5、

\deltaは推定精度で、0.05。

統計ソフトRではどうやるか?

上記の式は、n <- qnorm 云々の行に当たる。

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%のYesを±5%で見積もる」場合の計算結果は以下の通り。

385例が必要と計算される。ざっくり言えば400例くらいあればいい。

予想される結果が、50%(95%信頼区間:45%~55%)という意味だ。

> 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

予想される結果が、50%(95%信頼区間:40%~60%)でもよいとなると、 サンプルサイズはぐっと減って97例。約100例でよくなる。

> inf.pop.prop.samplesize(p=0.5, delta=0.1)

     Sample size estimated (infinite population) 

     Sample size needed = 96.03647
  Population proportion = 0.5
Diff. b/w mean to limit = 0.1
       Confidence level = 0.95

まとめ

アンケート調査に必要なサンプルサイズの計算は、 アンケート結果や精度の前提が必要。 50%を±5%で推定するならば、400人必要。 50%を±10%で推定するならば、100人で足りる。

あとは予算次第だ。

大人数に調査ができるなら、 サンプルサイズはできるだけ大きくしておくのに 越したことはない。

エクセルでサンプルサイズ計算

エクセルで計算できるようにした。よければどうぞ。

アンケートは何人に取ればいい?【エクセルでサンプルサイズ】 | HHA SHOP

動画による使い方解説(2020年5月28日追記)

youtu.be