matlab是我們常用一種軟件,對于做隨機過程或者概率的朋友,常常會用到一些隨機數。但是這些數據怎么生成呢?下面介紹下matlab中一些常見的隨機數。
matlab怎么產生隨機數
1、均勻分布:
■ unifrnd (a, b, m, n)
產生m*n階[a, b]均勻分布
■ unifrnd (a,b)
產生一個[a,b]的均勻隨機數
推薦學習《編程入門》
示例:
2、rand (m, n);
產生m*n階[0,1]均勻分布的隨機數矩陣
■ rand(n);
產生n*n階[0,1]均勻分布的隨機數
示例:
3、binornd(n,p,[M,N,P,…])
產生的是服從二項分布的隨機數,二項分布的參數為:n和p,
考慮一個打靶的例子,每槍命中率為p,共射擊N槍,那么一共擊中的次數就服從參數為(N,p)的二項分布。注意p要小于等于1且非負,N要為整數。
■ binornd(n,p,[M,N,P,…])
生成的隨機數服從參數為(N,p)的二項分布,這些隨機數排列成M*N*P… 階矩陣。如果只寫M,則生成M*M矩陣;
示例:
4、unidrnd(N,m,n)
產生m*n階離散均勻分布的隨機數矩陣;產生一個數值在1-N之間的mm*nn矩陣
示例:
5、exprnd (mu ,m, n)
產生m*n階期望值為mu的指數分布的隨機數矩陣
示例:
另外還有一些其他隨機數,這里不再介紹,方法其本類似