你能帮我理解平均(sem)值的哪个标准误差:sem或semm更适合估计蒙特卡罗模拟与真实均值的接近程度。
我的意思是我必须使用观察来计算sem,或者在每次观察后使用平均值进行semm计算?
#some data
x <- c(10,9,8,7,6,5,4,3,2,1,10,9,8,7,6,5,4,3,2,1,10,9,8,7,6,5,4,3,2,1,10,9,8,7,6,5,4,3,2,1)
x_means <- c()
sem <- c()
semm <- c()
for(i in 1:length(x))
{
x_means <- c(x_means, mean(x[1:i]))
sem <- c(sem, sd(x)/sqrt(i))
semm <- c(semm, sd(x_means)/sqrt(i))
}
我想使用sem值作为Monte-Carlo模拟的停止标准,但是我应该从样本或样本的平均值来计算sem吗?
答案 0 :(得分:1)
sd(x[1:i])/sqrt(i)
如果是这样,那么sem是正确的选择。
对于i.i.d.的重复随机观察。 Y_k,我们对E [Y_k]感兴趣。每个增量的明显估计量是X_k =(1 / k)(Y_1 + ... + Y_k),我们想要评估每个k的X_k的精度。一个明显的选择是X_k的样本标准偏差,即sqrt(1 /(k-1)* sum(Y_i-X_k)^ 2)。我们可以按如下方式实现。
y <- NULL
precision <- 1
while (precision > 0.01){
y <- c(y,rnorm(1)) # your own Monte-Carlo here, for this example, I chose trivial one
precision <- sd(y)/sqrt(length(y)-1)
if (is.na(precision)) precision <- 1
}