サイコロの出る目の度数分布


各数字が1/6の確率で得られる理想的なサイコロがあるとします。
ここで、このサイコロを繰り返し振って、出た目の度数分布を作成します。


必要な関数(ceiling, runif)の仕様を勉強。

$ R
> ? ceiling
Description:
     ‘ceiling’ takes a single numeric argument ‘x’ and returns a
     numeric vector containing the smallest integers not less than the
     corresponding elements of ‘x’.
与えたnumeric vector(要素は小数でも可)の各要素の小数点を切り捨てた整数値を返します。

>?runif
Description:
     These functions provide information about the uniform distribution
     on the interval from ‘min’ to ‘max’.
与えられた最小値から最大値の間で、一様分布に従う値を返すとのこと。

$ vim command.in

png("120805_dice.png")
par(mfrow=c(2,2))
dice1 <- ceiling(runif(n=6, min = 0, max = 6)) 
dice2 <- ceiling(runif(n=60, min = 0, max = 6)) 
dice3 <- ceiling(runif(n=600, min = 0, max = 6)) 
dice4 <- ceiling(runif(n=6000, min = 0, max = 6)) 
hist(dice1,main="n=6",breaks = seq(0,6,1))    
hist(dice2,main="n=60",breaks = seq(0,6,1))    
hist(dice3,main="n=600",breaks = seq(0,6,1))    
hist(dice4,main="n=6000",breaks = seq(0,6,1))   
dev.off()

$ R
> source("commnad.in")

n数を多くすれば母集団の分布を反映したものが得られます。