R的箱子模拟中的球

时间:2017-08-07 15:48:12

标签: r probability poisson

我想在R中的固定数量的柱m中模拟固定数量的球n的分布。到目前为止,我一直在使用{{1}的泊松近似}。对于rpois()箱中的大量球,这是一个不错的近似值。

但是,n仅允许您指定费率rpois(),即lambda。因此,正箱的数量通常小于球的数量。

是否有人知道允许我将球随机分配到垃圾箱的功能或脚本?

最终,我试图通过自举来计算m/n的置信区间。 这个问题可以说是“打破我的球”。

1 个答案:

答案 0 :(得分:2)

我想你想要多项分发。

这是一个快速的功能 - 我们在n个箱子中取m个球,给出x个结果,为每个x试验返回一个度量值的向量:

myfunc <- function(m,n,x){
  out <- rmultinom(x,m,rep(1,n))
  -log(colSums(out == 0)/n)
}

myfunc(10,40,10)
[1] 0.1923719 0.2548922 0.2231436 0.2548922 0.2876821 0.2876821 0.2231436 0.2231436 0.2231436 0.2548922

然后您可以获得分位数/置信区间:

out = myfunc(10,40,1000)
quantile(out, c(0.05,0.95))
       5%       95% 
0.1923719 0.2876821