Matlab:如何生成大量样本

时间:2013-11-13 22:04:20

标签: matlab

x = 10*rand(1,1e6);

n=100;
z = ((sum(x(1:n))-n*5)/std(x)*sqrt(n))*ones(1,1e6);


figure;
cdfplot(z)

因此,对于向量“z”,我想要每个不同数量的10,000个样本,当“x”被定义为0到10之间的数字集。但是,如果我实现我的代码,我只能获得10,000个相同的样本为“z”。如何创建10,000个不同的样本?

1 个答案:

答案 0 :(得分:1)

你的等式是x减去500的总和,除以x的标准差乘以10,这将得到一个标量,然后乘以1的向量。这将给你重复一百万次的相同数字。

您的问题非常清楚,所以我不确定您希望此代码执行什么操作,但是如果您想使用0到10之间的10,000个值来计算z的每个元素,那么您将计算总共有一百万个随机数,那么我认为这就是你想要的:

x=10*rand(1e4,100);

n=100;
z=(sum(x)-5*n)./std(x)*sqrt(n);

cdfplot(z)