Matlab學習手記——隨機函式
阿新 • • 發佈:2019-02-03
整理一下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);