我需要创建一个函数,该函数返回长度为n的向量,其值范围从0到1(或类似,.01到.99也能正常工作),它遵循具有指定平均值mu和sd的正态分布。也就是说,矢量中约68%的值落在±1 s.d内。用户指定的平均值。因此,函数的输入是n,mu,s.d。并返回一个向量。
非常感谢任何帮助。感谢
答案 0 :(得分:1)
使用randn
:
v = randn(1,n)*sd+mu;
randn(1,n)函数将返回一个1乘n的矩阵,其中包含从标准正态分布中提取的伪随机值。
通过将其乘以sd并添加mu将为您提供一组正常分布的数字,其平均值为mu
且标准偏差为sd
。
答案 1 :(得分:0)
也许我误解了你的请求而你不想要随机数,但正态分布曲线在0和1之间评估
高斯方程或正态分布是:
x = (1:n)/n;
y = 1/(sigma*sqrt(2*pi)).*exp(-((x-mu).^2)/(2*sigma^2));
由于你想要一个长度为n的向量,x也应该是那个长度。所以你可以像上面那样做(它从1 / n开始,以1结束)。然后,您可以评估这些值的正态分布。