静粛に、只今統計勉強中

仕事でデータ分析をすることになったバリバリ文系アラフィフのおっさんが、独学で統計の勉強を始めました。

標本平均の分布が正規分布になることをシミュレーションで確かめてみた1

標本平均というのは、母集団から抽出した標本の平均値のことです。
言わずもがなですね。

 E(\bar{X})=\mu

ですから、標本平均は母集団の平均値であることが期待されるわけですが、残念ながらピッタリ一致することは滅多にありません。

 V(\bar{X})=\frac{\sigma^2}{n}

母分散をサンプルサイズ nで割った分だけバラついてしまうことになっています。
上の式から、標本平均の分散は、

  • サンプルサイズ nが小さいほど、大きくなる
  • サンプルサイズ nが大きいほど、小さくなる

ということがわかります。

驚きなのは、 nが十分に大きければ、母集団がどのような分布であっても標本平均の確率分布は(近似的に)正規分布に従うことです。

このことを実感してみたくて、Excelでシミュレートしてみました。

 

  1. まず、母集団を作ります。
    A列に1~100までの正数を入力して、C1セルに =RAND() と入力します。

    f:id:cyclo-commuter:20190208151410j:plain

    1~100の離散型確率変数

     

  2.  C1セルの数式をC2~C100セルまでコピーして、B1セルに =C1/SUM($C$1:$C$100) と入力します。

    f:id:cyclo-commuter:20190208151745j:plain

    乱数(確率の元)を100個用意

     

  3. B1セルの数式をB2~B100セルまでコピーします。
    これで、B列にA列の確率変数の生起確率がセットされました。
    【データ】→【データ分析】→【乱数発生】→【OK】をクリックします。
    f:id:cyclo-commuter:20190208152416j:plain

     

  4. 下図のように入力して、【OK】をクリックします。
    f:id:cyclo-commuter:20190208153045j:plain

     

  5. E列に、N=1000の母集団が作られました。

    f:id:cyclo-commuter:20190208153216j:plain

    N=1000の母集団

     

  6.  ここで、以前作ったヒストグラム出力マクロ>を作成中のブックの標準モジュールにコピペします。

     

  7.  【開発】→【マクロ】をクリック。

    f:id:cyclo-commuter:20190208153653j:plain

     

  8.  「HISTGRAM」を選択して、【実行】をクリック。

    f:id:cyclo-commuter:20190208153742j:plain

     

  9. 母集団のヒストグラムが生成されました。
    なんらかの確率分布に従っているようには見えませんね。

    f:id:cyclo-commuter:20190208153833j:plain

    母集団の分布

     

  10. ここで、以下のVBAコードを標準モジュールに入力します。
    f:id:cyclo-commuter:20190208154054j:plain

    無作為抽出のアルゴリズムは、以下のサイトを参考にさせていただきました。

     

  11.  【開発】→【マクロ】→「Random_Sampling」を選択して、【実行】をクリック。

    f:id:cyclo-commuter:20190208154830j:plain

     

  12.  G~P列にn=10の標本が1000個、Q列に標本平均が入力されました。

    f:id:cyclo-commuter:20190208155045j:plain

    n=10のサンプル(標本数1000)

     

  13. Q1~Q1000を選択→ 「HISTGRAM」を選択して、【実行】をクリック。
    f:id:cyclo-commuter:20190208155341j:plain

     

  14. n=10の標本の分布が生成されました。

    f:id:cyclo-commuter:20190208155509j:plain

    n=10の標本分布

    標本平均の平均は母平均とほぼ一致、標本平均の分散もほぼ \frac{母分散}{10}になっています。