GAS(Google Apps Script)を使って乱数を算出してみたいと思います。
スプレッドシートに算出した乱数を表示し、300個の乱数を5回発生させ、分配率を確認します。
実際のソース
ソースは以下の通りです。
function myFunction() {
// 現在開いているスプレッドシートを取得
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
// 現在開いているシートを取得
var sheet = spreadsheet.getActiveSheet();
for(var j=1;j<=5;j++){
for(var i=1;i<=300;i++){
//ランダムで数を算出
var getVal = Math.floor(Math.random()*300 + 1);
sheet.getRange(i,1).setValue(getVal);
}
}
}
実行結果
実行するとこのように表示されます。(左が5行分)
実行結果から50個の数字毎に分配率を計算しました。
各分配率
各分配率結果は以下の通りです
1回目
- | 件数 | 率 |
1-50 | 46 | 15.33% |
51-100 | 57 | 19.00% |
101-150 | 65 | 21.67% |
151-200 | 45 | 15.00% |
201-250 | 43 | 14.33% |
251-300 | 44 | 14.67% |
2回目
- | 件数 | 率 |
1-50 | 55 | 18.33% |
51-100 | 38 | 12.67% |
101-150 | 55 | 18.33% |
151-200 | 50 | 16.67% |
201-250 | 57 | 19.00% |
251-300 | 45 | 15.00% |
3回目
- | 件数 | 率 |
1-50 | 49 | 16.33% |
51-100 | 56 | 18.67% |
101-150 | 48 | 16.00% |
151-200 | 50 | 16.67% |
201-250 | 48 | 16.00% |
251-300 | 49 | 16.33% |
4回目
- | 件数 | 率 |
1-50 | 52 | 17.33% |
51-100 | 50 | 16.67% |
101-150 | 51 | 17.00% |
151-200 | 50 | 16.67% |
201-250 | 49 | 16.33% |
251-300 | 48 | 16.00% |
5回目
- | 件数 | 率 |
1-50 | 60 | 20.00% |
51-100 | 55 | 18.33% |
101-150 | 48 | 16.00% |
151-200 | 44 | 14.67% |
201-250 | 41 | 13.67% |
251-300 | 52 | 17.33% |
最後に
若干、偏りが出ますが許容範囲内かと考えられます。