首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >R,使用具有两种以上可能性的二项分布。

R,使用具有两种以上可能性的二项分布。
EN

Stack Overflow用户
提问于 2016-09-09 01:42:28
回答 2查看 1.5K关注 0票数 2

我知道这可能是最基本的,但我似乎有一个心理障碍。假设您想要计算将4、5或6抛在一个模具上的概率。在R中,这很简单:

代码语言:javascript
运行
复制
sum(1/6, 1/6, 1/6)

这给出了1/2的正确答案。然而,在我的脑海中(它可能会保留),我应该能够使用二项分布来实现这一点。我为pbinom和dbinom尝试过各种参数组合,但是我无法得到正确的答案。

抛硬币时,它工作得很好。在有两种以上可能结果的情况下,这是否完全不合适?(我是个程序员,不是统计学家,所以我希望能被这里的统计人员杀了。)

问:如何使用pbinom()或dbinom()计算一卷模具抛出4、5或6的概率?我对程序包和骰子包很熟悉,但我真的想使用内置的发行版之一。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-09 03:27:40

正如上面所提到的,掷骰子可以用多项概率来表示.例如,滚动4的概率是

代码语言:javascript
运行
复制
dmultinom(c(0, 0, 0, 1, 0, 0), size = 1, prob = rep(1/6, 6)) 
# [1] 0.1666667

滚动4,5或6的概率是

代码语言:javascript
运行
复制
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
票数 4
EN

Stack Overflow用户

发布于 2018-04-25 18:00:46

虽然这并不是很明显,但这可以通过在我在CRAN上的包Github上的另一个pmultinom包中实现的p多项式来实现。

您将其概念化为它不是1、2或3的事件。

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

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

代码语言:javascript
运行
复制
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”函数的和。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39402579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档