matlab 生成一组服从正态分布的随机变量

如何用matlab生成一组均值为0,方差为6的服从高斯分布的随机变量。
谢谢,麻烦写上点标注以便学习。

用randn()可以生成高斯分布的随机数。
不过只有先生成随机数才有方差和均值,反过来可难了。

也只能使均值和方差近似等于0和6,
用下面方法:
x=randn(1,100)*sqrt(6);
while abs(mean(x))>=0.01 | abs(var(x)-6)>=0.01
x=randn(1,100)*sqrt(6);
end

这样生成的随机数列x,平均值约等于0,方差越等于6,误差不超过0.01。
当然你也可以把精度调得更高一些,但很可能很久都找不到合适的随机数。

mean()是求平均值,var()是求方差,
取随机数之后乘以sqrt(6)是因为randn()取出的随机数方差在1左右,所以要放大一下。

还有随机数的个数我这里是100个,你可以随意修改。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-01-16
normrnd(0,sqrt(6),10,5)%生成10行5列均值为0方差为6的正态分布随机数

matlab 生成一组服从正态分布的随机变量
用randn()可以生成高斯分布的随机数。不过只有先生成随机数才有方差和均值,反过来可难了。也只能使均值和方差近似等于0和6,用下面方法:x=randn(1,100)*sqrt(6);while abs(mean(x))>=0.01 | abs(var(x)-6)>=0.01 x=randn(1,100)*sqrt(6);end 这样生成的随机数列x,平均值约等于0...

matlab 求一组符合正态分布的随机数
第一种方法:利用标准参数下的分布函数结合参数进行运算,如下:datan1 = 0.5 + randn(10,1);由于将普通的正态分布转化为标准正态分布十分简单,因此上面的计算后得到相应参数的正态分布是合理的。第二种方法:直接调用random函数,如下:datan2= random('norm', 0.5, sqrt(1))random函数的第...

matlab怎么生成正态分布随机数
第一步我们首先需要知道matlab中可以使用randn函数生成正态分布随机数,在命令行窗口中输入“help randn”,可以看到randn函数的使用方法,如下图所示:第二步输入randn(5),生成一个均值为0,方差和标准差为1的5行5列正态分布随机数矩阵,如下图所示:第三步输入randn(3,4),可以生成一个3行4列的...

matlab产生符合正态分布的随机数
我是这样理解的:normrnd([1 2 3;4 5 6],0.1,2,3)产生一个所有元素符合正态分布的2行3列随机矩阵。[1 2 3;4 5 6]为各分量的均值,0.1为所有分量的方差;后面的2,3与[1 2 3;4 5 6]维数对应。

matlab里如何产生方差均值已知的服从正态分布的随机数?
mvnrnd(mu,sigma,number)——产生number个均值为mu,协方差矩阵为sigma的正态分布随机数 例子:mvnrnd([1,2],[2 1;1 4],100)

matlab中怎么定义一个函数是服从正态分布的
是要生成服从正太分布的随机数么?>> help normrnd NORMRND Random matrices from normal distribution.R = NORMRND(MU,SIGMA) returns a matrix of random numbers chosen from the normal distribution with parameters MU and SIGMA.The size of R is the common size of MU and SIGMA if both are...

MATLAB中产生【-1,1】上服从正态分布随机数,怎么可以控制区间??_百度知...
正态分布的pdf的定义区间就是-inf到+inf,不存在定区间上的正态分布.如果楼主想求[-1,1]的近似正态分布,可利用randn()生成方差为1的标准正态分布随机数,再乘以1\/3,生成标准差为1\/3的正态分布随机变量.根据3σ准则,abs(X)>1的概率会很小,再加上条件,一旦abs(X)>1,重新生成以下,直到生成的...

如何matlab取正态分布随机数
1. R=normrnd(MU,SIGMA):生成服从正态分布(MU参数代表均值,SIGMA参数代表标准差)的随机数。输入的向量或矩阵MU和SIGMA必须形式相同,输出R也和它们形式相同。标量输入将被扩展成和其它输入具有相同维数的矩阵。2. R=normrnd(MU,SIGMA,m,n): 生成m×n形式的正态分布的随机数矩阵。实例:生成均值...

Matlab如何生成正太分布随机数,并画出直方图?
x=normrnd(MU,SIGMA,m,n): %生成m×n形式的正态分布的随机数矩阵。[a,b]=hist(x);bar(b,a\/sum(a))%频数直方图 比如:x=normrnd(1,1,100,1) %生成m×n形式的正态分布的随机数矩阵。[a,b]=hist(x);bar(b,a\/sum(a))%频数直方图 建议:自己操作一遍以检验之。

matlab如何生成gamma分布随机变量
1、首先双击matlab软件图标,打开matlab软件,可以看到matlab软件的界面。2、使用函数normrnd()创建一个服从正态分布的随机数样本w。3、使用函数gamrnd()创建一个服从gamma分布的随机数样本v。4、在命令行窗口中输入:subplot(2,1,1);qqplot(v),将图像分成上下两部分,在图像的上半部分绘制样本v与服从...

相似回答