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')
舉例
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
均勻分佈的隨機數或矩陣語法
Y = rand(n)
Y = rand(m,n)
Y = rand([m n])
Y = rand(m,n,p,...)
Y = rand([m n p...])
Y = rand(size(A))
rand
s = rand('state')
描述
rand函式產生由在(0, 1)之間均勻分佈的隨機陣列成的陣列
Y = rand(n) 返回一個n x n
Y = rand(m,n) 或 Y = rand([m n]) 返回一個m x n的隨機矩陣
Y = rand(m,n,p,...) 或Y = rand([m n p...]) 產生隨機陣列
Y = rand(size(A)) 返回一個和A有相同尺寸的隨機矩陣
1,rand(3)*-2 rand(3)是一個3*3的隨機矩陣(數值範圍在0~1之間) 然後就是每個數乘上-2
2 ,用matlab隨機產生60個1到365之間的正數1+fix(365*rand(1,60));
3,用rand函式隨機取100個從-1到1的數x1,x2,...,x = rand(1,100) * 2 - 1