Matlab之randn

matlab函数randn:产生正态分布的随机数或矩阵的函数

randn

产生均值为0,方差 σ^2 = 1,标准差σ = 1的正态分布的随机数或矩阵的函数。

用法:

Y = randn(n)

返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。

Y = randn(m,n) 或 Y = randn([m n])

返回一个m*n的随机项矩阵。

Y = randn(m,n,p,...) 或 Y = randn([m n p...])

产生随机数组。

Y = randn(size(A))

返回一个和A有同样维数大小的随机数组。

randn

返回一个每次都变化的数量。

s = randn('state')

表示随机产生数的状态state,一般情况下不用指定状态。但是有的书籍作者为了让读者能够看到和他书本的同样结果,采用了设置state,rand('state',0)作用在于如果指定状态,产生随机结果就相同了。

举例

Example 1. R = randn(3,4) 将生成矩阵

R =

1.1650 0.3516 0.0591 0.8717

0.6268 -0.6965 1.7971 -1.4462

0.0751 1.6961 0.2641 -0.7012

For a histogram of the randn distribution, see hist.

Example 2. 产生一个随机分布的指定均值和方差的矩阵:将randn产生的结果乘以标准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1的一个5*5的随机数方式如下:

x = .6 + sqrt(0.1) * randn(5)

x =

0.8713 0.4735 0.8114 0.0927 0.7672

0.9966 0.8182 0.9766 0.6814 0.6694

0.0960 0.8579 0.2197 0.2659 0.3085

0.1443 0.8251 0.5937 1.0475 -0.0864

0.7806 1.0080 0.5504 0.3454 0.5813

其他类似函数:rand, randperm, sprand, sprandn

posted @ 2013-03-26 19:27  ywl925  阅读(1060)  评论(0编辑  收藏  举报
Copyright at 2012 yangwenlong