randn 產生正態分佈的隨機數或矩陣的函式

2021-08-17 14:41:13 字數 1985 閱讀 4392

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

的隨機矩陣如果

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之間)

然後就是每個數乘上-22

,用matlab

隨機產生60個

1到365之間的正數

1+fix

(365*rand(1

,60));3

,用rand

函式隨機取

100個從-1到

1的數x1,

x2,...,

x = rand(1,100) * 2 - 1

對數正態分佈的隨機數

產生對數正態分佈的隨機數。對數正態分佈的概率密度函式為 f x left frac sigma exp left frac right x 0 0 x leqslant 0 end right.對數正態分佈的均值為 e 2 方差為 e 1 e 首先產生正態分佈的隨機變數 y 然後通過變換 x e 產...

C語言產生標準正態分佈或高斯分布隨機數

c語言 產生標準正態分佈或高斯分布 隨機數 產生正態分佈或高斯分布的三種方法 1.運用中心極限定理 大數定理 1 include 2 include 34 define nsum 2556 double gaussrand 714 15 x nsum 2.0 16 x sqrt nsum 12.0 ...

C語言 產生標準正態分佈或高斯分布 隨機數

c語言 產生標準正態分佈或高斯分布 隨機數 產生正態分佈或高斯分布的三種方法 1.運用中心極限定理 大數定理 1 include 2 include 3 4 define nsum 25 5 6 double gaussrand 7 14 15 x nsum 2.0 16 x sqrt nsum 1...