我是Matlab中的新手,我试图根据高斯(正态)分布和均匀分布生成二维随机数。假设我想要创建一个将用于数据挖掘任务/算法(二维数据过拟合)的2个不同数据集(高斯(1800对)和均匀(1200对))。在Matlab中生成随机二维点
其他重要问题是数据点应该在0-20的范围内。
我已经试过这对于高斯分布
SIGMA = [.5 .05; .05 .5 ];
temp = mvnrnd([-3 0], SIGMA,1800);
这些代码生成-5之间的数值为5,我想生成0-20所以我试图
SIGMA = [0 20];
,但我得到的范围-20至20
我怎样才能得到范围0-20?
到目前为止你累了什么?你有没有看过'rand'和'randn'?给我们展示一些代码... – Shai
高斯随机变量没有硬性界限。极端值不太可能。你能做的最好的就是抵消平均值,这是由mvnrnd的第一个参数控制的。试试[10 10]。 – Peter
'mvnrnd'不是正态分布(除非你可能选择合适的参数来适应特殊情况)。使用'randn'代替。 – Daniel