2015-08-26 19 views
0

我需要使用逆变换方法模拟Exp(5)分布的100个结果。计算样本均值(这些结果的平均值)。Matlab仿真和分布

对于这一部分,我也做了逆变换部,并得到该函数为:

x = - log(u)/λ 

所以,这就是我对我的代码至今:

lambda = 5; 
n = 100; 
U = rand(1, n); 
X = -log(U)/lambda; 
mean(X) 

然而,我不确定这个问题的第一部分在要求计算样本均值时是否正确。

然而,这个问题也要求重新实验1000次这个实验,然后绘制1000个样本均值的经验cdf。还显示了这些结果的预期平均值,即真实平均值。但是,我不知道该怎么做。任何人都可以请帮忙?

回答

1

如您所知,100个样本的平均值在不同运行之间可能会有所不同。更重要的是,100个样本的平均值并不完全是指数分布的期望值。您的老师希望您分析此行为(其分析等价物已在数学运算流程中提出:https://math.stackexchange.com/questions/155296/distribution-of-the-sample-mean-of-a-exponential

首先,您可能需要创建一个1x1000的数组,并将1000个这些实验的结果存储在那里。然后计算ecdf(构建matlab函数),并绘制结果。

+0

对于OP提到的“经验性cdf”,它应该是['ecdf'](http://www.mathworks.com/help/stats/ecdf.html) - 除非这个想法是写自己的想法这个版本。 – horchler

+0

@horchler你说得对。不知道我是如何困惑他们的,但现在已经修复了。 – Lanting