matlab随机函数
目錄
1. randsrc? ??無參數(shù)隨機輸出-1或1。有參數(shù),按照概率輸出m*m或m*n階矩陣
2. rand? ? ? ?隨機產生0—1中某一數(shù)
3. randint? ??無參數(shù)隨機輸出0或1。有參數(shù),按照概率輸出m*m或m*n階矩陣
4. randperm? ??返回從1到n隨機分布的整數(shù)序列,長度為n,如果需要重復多次出現(xiàn),可用:randi(n,1,k)
? ? ? ? ? ? ? ? ? ? ? ?randperm(10,k)+n;%k是變量個數(shù),生成(n+1)~(10+n)中k個不重復數(shù)
5. intersect? ?intersect(A,B),A,B為向量,返回A,B中相同的元素,并且排序后輸出
? ? ? ? ? ? ? ? ? ? ?intersect(A,B,'rows'),A,B需為相同列的矩陣,返回他們相同的行
6. cumsum? ??累積和,累積量
7. rectpuls
1. randsrc
out = randsrc
out = randsrc(m)????????% m*m階矩陣
out = randsrc(m,n)?????% 輸出m*n階
out = randsrc(m,n,alphabet)
out = randsrc(m,n,[alphabet; prob])
out = randsrc(m,n,...,state);
無參數(shù),則隨機輸出-1或1。
有參數(shù),輸出m*m或m*n矩陣,按照1/2的概率隨機分布-1和1,如果有alphabet向量參數(shù),則按照同樣的概率輸出由該參數(shù)確定的數(shù)字(alphabet向量中的每個項都以相等的概率出現(xiàn))。
再有prob參數(shù),確定每一個數(shù)字的出現(xiàn)概率。
???
?
2. rand
而rand是隨機產生0—1中某一數(shù)
?
3. randint
out = randint
out = randint(m)
out = randint(m,n)
out = randint(m,n,rg)
out = randint(m,n,rg,state)
描述同上。但是無參數(shù)的話隨機輸出0或1。有參數(shù),按照同樣概率輸出m*m或m*n階矩陣。如有rg參數(shù),則按照同樣概率隨機輸出[0,rg-1](rg>0)或[rg+1,0](rg<0)或[min,max](rg為兩個元素的向量)之間的數(shù)字。
?
4. randperm
p = randperm(n)返回從1到n隨機分布的整數(shù)序列,長度為n。
p = randperm(n,k) 返回一行從1到n的整數(shù)中的k個,而且這k個數(shù)也是不相同的。
randperm返回不重復的重排采樣(k-permutations)。
?
如果需要重復多次出現(xiàn),可用:randi(n,1,k)。
?
其他:
5. intersect
intersect(A,B),A,B為向量,返回A,B中相同的元素,并且排序后輸出。
intersect(A,B,'rows'),A,B需為相同列的矩陣,返回他們相同的行。
[c, ia, ib] = intersect(...);將相同元素的索引index輸出到ia,ib中。
?
6. cumsum
B = cumsum(X);??求向量X中元素的累積和,如果X為矩陣,則按列求累積量.
B = cumsum(X,dim);??按dim給定的維度求累積量。
例如:B = cumsum(X,1)返回的是沿著第一維(各列)的累加和,cumsum(X,2)返回的是沿著第二維(各行)的累加和。
?
相關函數(shù):cumprod, prod, sum
sum 函數(shù)
eg.
?
7. rectpuls
rectpuls(T);??以零為中心寬度為1的方波,區(qū)間為左閉右開區(qū)間,即rectpuls(-0.5) = 1;而rectpuls(0.5) = 0;
rectpuls(T,W) generates a rectangle of width W.
?
轉自https://www.jianshu.com/p/825ddb8e59ec
一、rand ():生成(0,1)區(qū)間上均勻分布的隨機變量
rand(5,1) %生成隨機數(shù)排列的列向量。
rand(5)%生成5行5列的隨機矩陣。
rand(5,2)%生成5行2列的隨機矩陣。
x=rand(10000,1);
hist(x);%繪圖,生成隨機數(shù)的分布
?
二、randn ():生成(0,1)區(qū)間上正態(tài)分布的隨機變量
randn(5,1)%生成隨機數(shù)排列的列向量
randn(5)%生成5行5列的隨機矩陣。
randn(5,2)%生成5行2列的隨機矩陣。
x=randn(10000,1);
hist(x);%繪圖,生成隨機數(shù)的分布
?
三、連續(xù)型分布隨機函數(shù)
unifrnd?():生成某個區(qū)間上均勻分布的隨機變量
unifrnd(-2,3,5,1)%在(-2,3)區(qū)間內生成一列隨機變量
unifrnd(-2,3,5)%在(-2,3)區(qū)間內生成5行5列的隨機變量
unifrnd(-2,3,5,2)%在(-2,3)區(qū)間內生成5行2列的隨機變量
x=unifrnd(-2,3,100000,1);
hist(x,50)%繪圖,生成隨機數(shù)的分布
normrnd?():生成指定均值,標準差的正態(tài)分布的隨機變量
normrnd(2,3,5,1)%生成指定均值為2,標準差為3的正態(tài)分布的5行1列隨機變量
normrnd(2,3,5)%生成指定均值為2,標準差為3的正態(tài)分布的5行5列的隨機變量
normrnd(2,3,5,2)%生成指定均值為2,標準差為3的正態(tài)分布的5行2列的隨機變量
x=unifrnd(-2,3,100000,1);
hist(x,50)%繪圖,生成隨機數(shù)的分布
chi2rnd():生成的隨機數(shù)服從自由度為v的卡方分布
chi2rnd(5,5,1)%生成服從自由度為5的卡方分布的5行1列隨機變量
chi2rnd(5,5)%生成服從自由度為5的卡方分布的的5行5列的隨機變量
chi2rnd(5,5,2)%生成服從自由度為5的卡方分布的5行2列的隨機變量
x=chi2rnd(5,100000,1);
hist(x,50)%繪圖,生成隨機數(shù)的分布
frnd():生成的隨機數(shù)服從參數(shù)為w,v的t分布
frnd(3,5,5,1)%生成服從參數(shù)為(3,5)的f分布的5行1列隨機變量
frnd(3,5,5)%生成服從參數(shù)為(3,5)的f分布的的5行5列的隨機變量
frnd(3,5,5,2)%生成服從參數(shù)為(3,5)的f分布的5行2列的隨機變量
x=frnd(3,5,10000,1);
hist(x,50)%繪圖,生成隨機數(shù)的分布
trnd():生成的隨機數(shù)服從參數(shù)為v的t分布
trnd(5,5,1)%生成服從參數(shù)為5的t分布的5行1列隨機變量
trnd(5,5)%生成服從參數(shù)為5的t分布的的5行5列的隨機變量
trnd(5,5,2)%生成服從參數(shù)為5的t分布的5行2列的隨機變量
x=trnd(5,100000,1);
hist(x,50)%繪圖,生成隨機數(shù)的分布
同理:
betarnd()%生成服從參數(shù)為(w,v)的Beta分布的隨機數(shù)
exprnd()?%生成服從參數(shù)為mu的指數(shù)分布的隨機數(shù)
gamma()%生成服從參數(shù)為(w,v)的Gamma分布的隨機數(shù)
lognrd()%生成服從參數(shù)為(mu,sigma)的對數(shù)正態(tài)分布的隨機數(shù)
raylrnd()%生成服從參數(shù)為w的瑞利分布的隨機數(shù)
wblrnd()%生成服從參數(shù)為(scale,shape)的對數(shù)正態(tài)分布的隨機數(shù)
......
?
四、離散型分布隨機函數(shù)
unidrnd()%生成服從離散均勻分布的隨機數(shù)
unidrnd(5,5,1) %生成一列隨機變量
unidrnd(5,5) %生成5行5列的隨機變量
unidrnd(5,5,2) %生成5行2列的隨機變量
x=unidrnd(9,100000,1);
hist(x,9) %繪圖,生成隨機數(shù)的分布
binornd()?%生成的隨機數(shù)服從參數(shù)為(N,p)的二項分布
binornd(10,0.3,5,1)%生成5個隨機數(shù)排列的列向量
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(10,0.3)的二項分布?
binornd(10,0.3,5)?%生成5行5列的隨機數(shù)矩陣?
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(10,0.3)的二項分布?
binornd(10,0.3,[5,2])%生成一個5行2列的隨機數(shù)矩陣
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(10,0.3)的二項分布?
x=binornd(10,0.45,100000,1);
hist(x,11);%繪圖,生成隨機數(shù)的分布
geornd()%此函數(shù)生成服從幾何分布的隨機數(shù)。
geornd(0.4,5,1)?%生成5個隨機數(shù)排列的列向量
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(0.4)的二項分布
geornd(0.4,5)?%生成5行5列的隨機數(shù)矩陣?
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(0.4)的二項分布
geornd(0.4,[5,2])?%生成一個5行2列的隨機數(shù)矩陣
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(0.4)的二項分布
?x=geornd(0.4,100000,1);
hist(x,50)%繪圖,生成隨機數(shù)的分布
poissrnd()?%生成服從泊松(Poisson)分布的隨機數(shù)
poissrnd(2,5,1)?%生成5個隨機數(shù)排列的列向量
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(2)的泊松分布
poissrnd(2,5)?%生成5行5列的隨機數(shù)矩陣?
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(2)的泊松分布
poissrnd(5,[5,2])%生成一個5行4列的隨機數(shù)矩陣?
%注:上述語句生成的隨機數(shù)所服從的參數(shù)為(2)的泊松分布
x=poissrnd(2,100000,1);
hist(x,50);%繪圖,生成隨機數(shù)的分布
總結
以上是生活随笔為你收集整理的matlab随机函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c++随机函数
- 下一篇: matlab人脸追踪,求大神帮助我这个菜