使用R模拟有偏的六面骰子
在R中,我想用代码模拟一个有偏的6面骰子被抛出44次。 骰子是有偏差的,因为数字6被抛出的可能性是原来的两倍 和任何其他个人号码一样 我可以这样做的一个公正的骰子,但不知道该怎么做这一个使用R模拟有偏的六面骰子,r,R,在R中,我想用代码模拟一个有偏的6面骰子被抛出44次。 骰子是有偏差的,因为数字6被抛出的可能性是原来的两倍 和任何其他个人号码一样 我可以这样做的一个公正的骰子,但不知道该怎么做这一个 谢谢您需要将replace=TRUE和prob-参数设置为您选择的非等概率设置 throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 ) # Two realizations > throws <- sample(1:6,
谢谢您需要将
replace=TRUE
和prob
-参数设置为您选择的非等概率设置
throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 )
# Two realizations
> throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 )
> table(throws)
throws
1 2 3 4 5 6
10 5 8 7 3 11
> throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 )
> table(throws)
throws
1 2 3 4 5 6
7 3 4 8 7 15
throws表(throws)
投掷
1 2 3 4 5 6
10 5 8 7 3 11
>投掷台(投掷)
投掷
1 2 3 4 5 6
7 3 4 8 7 15
注意,结果仍然是(伪)随机的,并且仍然有可能偏离概率论的天真学生可能期望的结果。我无法抗拒学究式的纠正,即这是针对单个骰子而不是复数的“骰子”。您需要将
replace=TRUE
和prob
-参数设置为您选择的非等概率设置
throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 )
# Two realizations
> throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 )
> table(throws)
throws
1 2 3 4 5 6
10 5 8 7 3 11
> throws <- sample(1:6, 44, replace=TRUE, prob=c(1,1,1,1,1,2)/7 )
> table(throws)
throws
1 2 3 4 5 6
7 3 4 8 7 15
sample(1:6, size = 44, replace = TRUE, prob = c(rep(1, 5), 2))
throws表(throws)
投掷
1 2 3 4 5 6
10 5 8 7 3 11
>投掷台(投掷)
投掷
1 2 3 4 5 6
7 3 4 8 7 15
注意,结果仍然是(伪)随机的,并且仍然有可能偏离概率论的天真学生可能期望的结果。我无法抗拒学究式的修正,即这是针对单个骰子而不是复数的“骰子”。您可以使用样本并指定每个数字的概率
sample(1:6, size = 44, replace = TRUE, prob = c(rep(1, 5), 2))
sample(x = 1:6, size = 44, replace = T, prob = c(rep(1/7, 5), 2/7))
您可以使用sample并指定每个数字的概率
sample(x = 1:6, size = 44, replace = T, prob = c(rep(1/7, 5), 2/7))
请参见示例的
prob
参数。使用prob=c(1,1,1,1,1,2)
应该可以满足您的需要。请参阅示例的prob
参数。使用prob=c(1,1,1,1,1,2)
应该可以满足您的需要。感谢您对该问题的精彩回答。我基本上了解工作原理,但想知道为什么在这个过程中使用/7?实际上并不需要它。我把它放进去,这样概率之和为1,但默认行为是这样做(正如Telford的答案所显示的那样,它毫无怨言地运行着。。感谢您对这个问题的令人敬畏的回答。我基本上了解了工作原理,但不知道为什么在这个过程中会出现/7?它实际上并不需要。我把它放进去,所以概率总和为1,但默认行为无论如何都是这样做的。)(正如泰尔福德毫无怨言的回答所证明的那样。。