我想使用MATLAB可视化实际中的中心极限定理。我想使用rand()
生成10个均匀分布U[0,1]
的样本并计算它们的平均值,然后将其保存到矩阵'Mat'。
然后我将使用直方图来可视化分布的收敛。您将如何执行此操作并对该直方图进行归一化,使其成为有效的概率密度(而不是仅计算发生频率)?
要生成样本,我正在做类似的事情:
Mat = rand(N,sizeOfVector) > rand(1);
但是我想我走错了方向。
要生成长度为N
的sizeOfVector
个样本,请按照您的建议从rand
开始,然后继续执行以下操作(为可读性调用数组average
而不是Mat
:
samples = rand(N,sizeOfVector);
average = mean(samples,1);
binWidth = 3.49*std(average)*N^(-1/3)); %# Scott's rule for good bin width for normal data
nBins = ceil((max(average)-min(average))/binWidth);
[counts,x] = hist(average,nBins);
normalizedCounts = counts/sum(counts);
bar(x,normalizedCounts,1)