用R计算平均值

时间:2017-07-02 07:36:28

标签: r mean montecarlo

我试图用Monte-Carlo-Simulation方法计算随机变量的平均值,所以我写了这个函数:

> example <- function(n,B=10000) mean(replicate(B,all(sample(n):1:n)))
> set.seed(0)
> example(3)

使用其他程序计算,这应该给出接近2.6662的值,但是在R中,我一直得到这个输出:

[1] 1
There were 50 or more warnings (use warnings() to see the first 50)

1 个答案:

答案 0 :(得分:0)

可能是您想要的是以下代码的第二部分。请注意使用种子,样品功能等。你没有正确使用它们。

set.seed(42)
example <- function(n,B=10000) mean(sample(1:n, n*B, replace = TRUE))
example(3)

set.seed(42)
example <- function(n,B=10000) mean(replicate(B, 
                                 sample(1:n, n, replace = TRUE)))
example(3)