对于统一分发,请使用(randn
用于正态分发)。
rand
生成在区间(0,1)上均匀分布的数字,因此均值为0.5,方差为1/12。要获得不同的均值或方差,您需要进行移位和缩放:
desired_mean = 3;
desired_var = 5;
N = 1e6; % number of samples
x = sqrt(12*desired_var) * (rand(1,N)-0.5) + desired_mean;
检查:
>> mean(x)
ans =
3.003083912414557
>> var(x)
ans =
4.998928353933906