我知道这可能是基本的,但我似乎有心理障碍。让我们假设您想要计算在一个骰子上掷出4,5或6的概率。在R中,它很容易:
sum(1/6, 1/6, 1/6)
这给出了1/2,这是正确的答案。但是,我在脑海中(可能应该保留的地方)我应该能够使用二项分布。我已尝试过pbinom和dbinom的各种参数组合,但我无法得到正确的答案。
投掷硬币,效果很好。对于有两种以上可能结果的情况,这完全不合适吗? (我是一名程序员,而不是统计学家,所以我期待在这里被统计人员杀死。)
问题:如何使用pbinom()或dbinom()来计算一卷骰子投掷4,5或6的概率?我熟悉prob和dice包,但我真的想使用其中一个内置的发行版。
感谢。
答案 0 :(得分:3)
正如上面提到的@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
答案 1 :(得分:1)
虽然不是很明显,但可以使用pmultinom完成,可以在my pmultinom package on CRAN或this other pmultinom package on Github中实现。
您将其概念化为不为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。上述概率可以(使用我的包)计算为
<meta name="viewport" content="width=device-width, initial-scale=1">
虽然这是一个尴尬的重新制定,但我喜欢它,因为我更喜欢使用“p”函数,而不是采用“d”函数的总和。