1. 程式人生 > >matlab中的randn randi rand randsrc的用法以及區別

matlab中的randn randi rand randsrc的用法以及區別

1,rand 生成均勻分佈的偽隨機數。分佈在(0~1)之間
主要語法:rand(m,n)生成m行n列的均勻分佈的偽隨機數
rand(m,n,’double’)生成指定精度的均勻分佈的偽隨機數,引數還可以
是’single’
rand(RandStream,m,n)利用指定的RandStream(我理解為隨機種子)生成偽
隨機數

2,randn 生成標準正態分佈的偽隨機數(均值為0,方差為1)
主要語法:和上面一樣

3, randi 生成均勻分佈的偽隨機整數
主要語法:randi(iMax)在開區間(0,iMax)生成均勻分佈的偽隨機整數
randi(iMax,m,n)在開區間(0,iMax)生成mXn型隨機矩陣
r = randi([iMin,iMax],m,n)在開區間(iMin,iMax)生成mXn型隨機矩陣
4, randsrc

無引數形式,隨機輸出-1或1;

randsrc(m,n);

randsrc(m);

輸出m*n階或m*m階矩陣,元素為隨機出現的-1或1,概率為1/2;

而rand是隨機產生0——1中某一數呢,
例如

rand(2,3)

ans =

0.9501    0.6068    0.8913
0.2311    0.4860    0.7621

rand(3)

ans =

0.4565    0.4447    0.9218
0.0185    0.6154    0.7382
0.8214    0.7919    0.1763

相關推薦

no