コインを投げた時の成功率(おもてが出る確率)は1/2である
しかし数回投げてみたら1/2にはならないときもある
ところが投げる回数を増やすと、1/2に近づいていく
これが大数の法則・・・
0~1の一様乱数を発生させて、1回毎に成功回数を確認してみましょう
乱数が<0.5になった場合を表が出たと仮定して、≧0.5になったらウラが出たと仮定します
(逆でも構いません)
表の回数÷投げた回数が確率になります
まずは20回投げてみます(実際に20個の乱数を生成するので投げませんが、これくらいの回数なら10円玉でできる回数ですね)
data=vector()
data_c=vector()
data_m=vector()
for(i in 1:20){
data[i] = runif(1, 0, 1)
data_c[i] = ifelse(data[i]<0.5, 1, 0)
data_m[i] = sum(data_c)/i
}
plot(1:20, data_m,
xlab="",ylab="",type="l")
abline(0.5, 0, col="red")

なんとなく0.5に近づいてきていますね
それでは実際にはやれない(やりたくない)回数を試してみましょう
10000回
data=vector()
data_c=vector()
data_m=vector()
for(i in 1:10000){
data[i] = runif(1, 0, 1)
data_c[i] = ifelse(data[i]<0.5, 1, 0)
data_m[i] = sum(data_c)/i
}
plot(1:10000, data_m,
xlab="",ylab="",type="l")
abline(0.5, 0, col="red")

ほぼほぼ0.5に集中(真の値に集中)してます
ダメ出し 間違い、分かりにくい部分などのご意見をお待ちします