0

我正在使用语言 [R] 生成一个样本 M = 32000 个平均值,每个平均值是通过对随机变量连续均匀分布 (0, 1) 的 36 个独立值进行平均计算得出的,生成如下:

sampleA<-1:32000

for ( i in 1:32000){
    MuestraAUnif<- runif(36)
    sampleA[i]<-mean(MuestraAUnif)
}

对于生成的样本,请我计算大于 L = 0.32 +4 * 1 / 100 的观察平均值的相对频率,并将其与平均 N 值大于 L的概率(近似于“中心极限定理”)进行比较。如下:

    L<- 0.32+4*1/100
    sigma<- sqrt(1/12) #(b-a)/12 
    miu = 0.5 #(a+b)/2
    greaterA <-sum(sampleA > L) #values of the sample greater than L are 23693
    xBar<- greaterA/length(sampleA) 
    X <- sum(sampleA) 
    n<-32000
    Zn<- (X - n*miu)/(sigma*sqrt(n))

    cat("P(xBar >",L,") = P(Z>", Zn, ")=","1 - P (Z < ", Zn,") =",1-pnorm(Zn),"\n") #print the theoretical prob Xbar greater than L
    cat("sum (sampleA >",L,")/","M=", n," para N =", 36,":",xBar, "\n") #print the sampling probability print when is greater than L

输出是:

P(xBar > 0.36 ) = P(Z> -3.961838 )= 1 - P (Z <  -3.961838 ) = 0.9999628 
sum (sampleA > 0.36 )/ M= 32000  para N = 36 : 0.7377187 

我的问题是:为什么这么远的值?,想必它们应该更接近(0.9999628 与 0.7377187 相差甚远)。我的实施有问题吗?原谅我的英语。

4

1 回答 1

2

梅尔基亚 66. 您所做的一切都是正确的,只是为了改变 MuestraAUnif<- runif(2)MuestraAUnif<- runif(32) ,它应该可以工作

于 2012-01-30T02:56:47.583 回答