我将介绍数值积分的一部分。虽然谈话本身会进入更好的数字整合形式(主要是重要抽样和分层抽样),但我在我的部分部分提到从均匀分布的蒙特卡洛整合抽样。在R中进行简单蒙特卡洛积分时出现错误结果
我发现:
mean(sin(runif(1e8, 0, pi)))
是给的0.636597
一个答案,而不是1
,预计。这个答案看起来与样本量的增加非常一致,我不确定为什么会有这么多的错误。其他计算如:
mean(sin(runif(1e6, 0, 2 * pi)))
给0.0005398996
,更接近的0
预期的应答。
有人可以帮我看看,为什么
mean(sin(runif(1e8, 0, pi)))
是给这种不准确的答案?该用户是否错误,或者是否从统一分配中抽样时会出现这种情况?
@ZheyuanLi在给你写一个答案时,我意识到我已经忘记了将结果乘以间隔的长度,当积分预期为0时不会被检测到。谢谢! – Mark