2

我知道这可能是初级的,但我似乎有一个心理障碍。假设您要计算掷出 4、5 或 6 的概率。在 R 中,这很容易:

sum(1/6, 1/6, 1/6)

这给出了正确答案的 1/2。但是,我在我的脑海里(它可能应该保留的地方)我应该能够为此使用二项分布。我已经尝试了 pbinom 和 dbinom 的各种参数组合,但我无法得到正确的答案。

抛硬币,效果很好。对于有两种以上可能结果的情况,这是否完全不合适?(我是程序员,不是统计学家,所以我希望被这里的统计人员杀死。)

问题:如何使用 pbinom() 或 dbinom() 来计算掷骰子掷出 4、5 或 6 的概率?我熟悉 prob 和 dice 包,但我真的很想使用其中一种内置发行版。

谢谢。

4

2 回答 2

4

正如上面提到的@Alex,掷骰子可以用多项概率表示。例如,掷出 4 的概率是

dmultinom(c(0, 0, 0, 1, 0, 0), size = 1, prob = rep(1/6, 6)) 
# [1] 0.1666667

掷出 4、5 或 6 的概率为

X <- cbind(matrix(rep(0, 9), nc = 3), diag(1, 3))
X
#      [,1] [,2] [,3] [,4] [,5] [,6]
# [1,]    0    0    0    1    0    0
# [2,]    0    0    0    0    1    0
# [3,]    0    0    0    0    0    1
sum(apply(X, MAR = 1, dmultinom, size = 1, prob = rep(1/6, 6)))
# [1] 0.5
于 2016-09-09T03:27:40.080 回答
1

虽然不是很明显,但这可以使用 pmultinom 来完成,在我的 CRAN 上的 pmultinom 包Github 上的其他 pmultinom 包中实现

您将其概念化为它不是1、2 或 3 的事件。然后,您将此概率写为

P(X_1 ≤ 0, X_2 ≤ 0, X_3 ≤ 0, X_4 ≤ ∞, X_5 ≤ ∞, X_6 ≤ ∞)

其中 X_i 是边 i 的出现次数。所有 X 一起具有多项分布,大小参数为 1,所有概率等于 1/6。上面的这个概率可以计算(使用我的包)为

pmultinom(upper=c(0, 0, 0, Inf, Inf, Inf), size=1,
          probs=c(1/6, 1/6, 1/6, 1/6, 1/6, 1/6), method="exact")
# [1] 0.5

虽然这有点尴尬,但我喜欢它,因为我更喜欢使用“p”函数而不是“d”函数的总和。

于 2018-04-25T18:00:46.157 回答