怎么在MATLAB中生成一个高斯随机矩阵?

 我来答
大大的Wiener
推荐于2019-08-15 · TA获得超过6.4万个赞
知道大有可为答主
回答量:392
采纳率:90%
帮助的人:33.2万
展开全部

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')

举例

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 

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式