小编jjt*_*jt3的帖子

有人知道为什么在测试版中为大数字集成R中断?

我有这个联合测试版发行版,我正在努力整合.

alpha1 = 400
beta1 = 26000
alpha2 = 410
beta2 = 26000

integrate(function(y) {
   sapply(y, function(y) {integrate(function(x) dbeta(x, shape1 = alpha1, 
     shape2 = beta1)*dbeta(y, shape1 = alpha2, shape2 = beta2), y,1)$value})
}, 0, 1)
Run Code Online (Sandbox Code Playgroud)

这适用于较小的alpha和beta甚至达到这些值.但如果我在测试版中大得多,那么整合功能就会开始破坏.我一直把它与蒙特卡洛的整合进行比较

n_sim = 1000000   # number of simulations
y = rbeta(n_sim, shape1 = alpha2, shape2 = beta2)
C2 = (1-pbeta(y, shape1 = alpha1, shape2 = beta1))
mean(C2)
Run Code Online (Sandbox Code Playgroud)

这对于较小的合理alpha和beta产生大致相同的答案.是的,我需要更大的测试版,我理解为什么我需要这么大的测试版.它来自大型数据集.有人知道为什么会这样吗?也许集成功能的内部工作原理?有工作吗?

r numerical-integration

7
推荐指数
0
解决办法
89
查看次数

标签 统计

numerical-integration ×1

r ×1