Excel でサイコロを振ります

 Excel には指定した範囲の無作為な整数値を返す

RANDBETWEEN(数値 1, 数値 2)

という便利な関数が用意されています。引数の「数値 1 」と「数値 2 」は出力する数値の上限と下限です。それぞれ 1 と 6 を指定して

=RANDBETWEEN(1, 6)

と入力すると 1 ~ 6 の値をランダムに返してくれます。この仮想サイコロをたくさん転がしてみます。どの目が出る確率も等しく 1 / 6 であるはずですから、1000 回振れば、ある目がでる回数は

1000 / 6 ≒ 167

ぐらいになっているはずですね。それを確認してみましょう。
 

1000 回分の試行データを用意します

 シートに試行番号 1 ~ 1000 の数値を用意しますが、これだけのデータをマウス操作で揃えるのは大変です。そこでセル A2 に 1 だけ入力して、 A2 を選択したまま「ホーム」タブから「フィル」(Excel 2013 なら右上隅に "↓" アイコン)⇒「連続データの作成」の順にクリックします。すると「連続データ」のダイアログが現れるので、「範囲」の列にチェックを入れ(列方向にデータを埋めます)、「増分値」を 1 、「停止値」を 1000 と入力して「 OK 」をクリックします。

 Excel連続データ作成1000

 次にセル B2 に

=RANDBETWEEN(1, 6)

と入力して右下隅をダブルクリックしてデータを揃えます。すると 1 から 6 までの数字がばらばらに割り振られるはずです。

 エクセルrandbetween関数
 

COUNTIF で数えます

 今度はこの列の中に「 1 は何回出ているのかな?」、「 2 は何回出ているのかな?」...... ということを確認します。

 Excelサイコロの目の出現回数を数える

 上の図を参照して D 列に目の数 1 から 6 を入れておきます。そして E2 には

=COUNTIF(B:B,D2)

と入力して右下隅のフィルハンドルをダブルクリックしてデータを埋めます。これは「 B 列に( D2 に入っている)1 がいくつあるのか数えなさい」という意味です。これでデータが揃いましたので(その時々によって値は少し違っています)、今度は棒グラフでビジュアル化しましょう。 D2 から E2 の範囲を選択して

「挿入」⇒「縦棒グラフの挿入」⇒「(2-D) 積み上げ縦棒」

の順に選択しましょう。すると次のようにおかしな系列(下図では青色)が混じったグラフが出現します( Excel のバージョンによって異なるかもしれません)。

 Excel2つの系列が混ざった棒グラフ

 そこでグラフエリアを右クリックして現れたメニューから「データの選択」を選んで、系列 1 の左についているチェックを外してください。あとは適当なタイトルをつけて、軸を右クリックして「軸の書式設定」から縦軸の範囲を 0 から 200 に設定します。すると次のようなグラフになるはずです。

 Excelサイコロ出現回数グラフ1000

 試行 1000 回ぐらいでは、まだばらつきがありますが、「まあ大体同じぐらいかなー」と思えなくもありませんね。 Excel の RAND や RANDBETWEEN 関数で出力されるのは本物ではなく疑似乱数と呼ばれるもので(しかも精度にかなり問題があったりして)誤差が生じるのは事実ですが、さすがにここまで目に見えるほどではありません。そこで試行 10,000 回によるグラフも添えておくので、上のグラフに比べると全体的に均されていることを確認してください。試行回数を多くすればするほど上端は揃っていくはずです。

 Excelサイコロ出現回数グラフ10000

スポンサーリンク
末尾広告
末尾広告

コメントをどうぞ

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください