生成随机矩阵

时间:2016-03-14 23:14:06

标签: matlab matrix normalization

我希望生成一个矩阵(m行和n列),其条目从零均值分布中独立采样,每行标准化为单位长度。我知道Matlab的函数randn(m,n),但我不确定"零均值"分配和规范化。有谁能够帮我? 感谢。

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题:

m=3; n=4;
M = randn([m n]);
M = bsxfun(@rdivide, M, sqrt(sum(M.*M,2))) %//divide each element by the magnitude of it's row

randn()符合标准正态分布zero-mean distribution的样本~N(0,1)

通过“每行标准化为单位长度”,我假设每个row vector in M需要unit length,所以我们将每个element除以{ {1}}。