【matlab】Matlab中产生正态分布随机数的函数normrnd

Date: 2018.8.5


转载自:https://blog.csdn.net/s334wuchunfangi/article/details/8163551

功能:生成服从正态分布的随机数
语法:
R=normrnd(MU,SIGMA)
R=normrnd(MU,SIGMA,m)
R=normrnd(MU,SIGMA,m,n)
说 明:
R=normrnd(MU,SIGMA):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的随机数。输入的向量或矩阵MU和SIGMA必须形式相同,输出R也和它们形式相同。标量输入将被扩展成和其它输入具有 相同维数的矩阵。

R=norrmrnd(MU,SIGMA,m):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的 随机数矩阵,矩阵的形式由m定义。m是一个1×2向量,其中的两个元素分别代表返回值R中行与列的维数。

R=normrnd(MU,SIGMA,m,n): 生成m×n形式的正态分布的随机数矩阵。

>> help normrnd
NORMRND Random arrays from the normal distribution.
R = NORMRND(MU,SIGMA) returns an array of random numbers chosen from a
normal distribution with mean MU and standard deviation SIGMA. The size
of R is the common size of MU and SIGMA if both are arrays. If either
parameter is a scalar, the size of R is the size of the other
parameter.

R = NORMRND(MU,SIGMA,M,N,…) or R = NORMRND(MU,SIGMA,[M,N,…])
returns an M-by-N-by-… array.

例:生成正态分布随机数。

>> a=normrnd(0,1)

  a =

     -1.4814

  >> a=normrnd(0,1,1,6)

  a =

      1.1287   -0.2900    1.2616    0.4754    1.1741    0.1269

  >> a=normrnd(0,1,[1 6])

  a =

      0.1555    0.8186   -0.2926   -0.5408   -0.3086   -1.0966

>> a=normrnd(10,2,2,3)

  a =

     13.6280   13.6090   11.0531
10.6240    8.5538    9.4795

注:正态分布只需要2个参数。
randn() 是标准正态分布;
normrnd()是自己可以指定均数和标准差的正太分布。


THE END!

原文地址:https://www.cnblogs.com/SoaringLee/p/10532396.html