Matlab学习手记——随机函数

1,058 阅读1分钟
整理一下Matlab里的随机函数功能。
randperm函数
randperm(n) % 产生从1到n的随机排列(整数类型);
randperm(n, m) % 产生m个属于1到n的随机整数;
randsrc函数
out = randsrc % -1 或 1
out = randsrc(m) % m*m 个 -1 或 1
out = randsrc(m,n) % m*n 个 -1 或 1
out = randsrc(m,n,alphabet) % 指定返回值为 alphabet 中的元素
out = randsrc(m,n,[alphabet; prob]) % 指定概率


out = randsrc(4, 3, [1 2])
out =
1 2 2
2 1 1
1 2 2
1 2 2

out = randsrc(5, 2, [1 2; 0.1, 0.9])
out =
1 2
2 2
2 2
2 1
2 2
unifrnd函数
R = unifrnd(A,B) % 返回A和B之间的随机数
R = unifrnd(A,B,m,n) % 返回 m*n 个A和B之间的随机数

unifrnd(3, 4)
ans =
3.6981

unifrnd(3, [3, 4, 5])
ans =
3.0000 3.8819 4.3384

unifrnd(3, 4, 2, 3)
ans =
3.6665 3.1280 3.1711
3.1781 3.9991 3.0326
unidrnd函数
R = unidrnd(N) % 返回不大于N的随机整数
R = unidrnd(N, m, n) % 返回 m*n 个不大于N的随机整数

unidrnd(4)
ans =
2

R = unidrnd(4, 2, 3)
R =
1 2 3
2 1 1
rand函数
均匀分布,介于0~1之间;

randn函数
高斯分布,比如产生均值为0.1,方差为0.1的高斯分布矩阵:

x = 0.1 + sqrt(0.1) * randn(4);

---------------------
作者:有个家伙喜欢代码
来源:CSDN
原文:blog.csdn.net/u012366767 …
版权声明:本文为博主原创文章,转载请附上博文链接!

更多学习资料可关注:annalin1203获取