MATLAB中生成隨機數方法總結

2021-09-14 04:57:07 字數 1290 閱讀 3704

好久沒用matlab了,今天在利用matlab進行資料處理時,突然發現自己忘記了該如何產生自己需要的隨機數形式,於是又查了一通資料。現對其進行乙個簡單的總結,供自己和大家以後參考:

1. randi : 產生均勻分布的偽隨機整數

%產生乙個1至10之間的隨機矩陣,大小為2x5;

s1 = randi(10,2,5);
%產生乙個-5至5之間的隨機矩陣,大小為1x10;

s2 = randi([-5,5],1,10);
2. rand: 產生均勻分布的偽隨機數

%產生乙個0至1之間的隨機矩陣,大小為1x5;

s3 = rand(1,5);
%產生乙個0至1之間的二進位制隨機矩陣,大小為1x10;

s4 = round(rand(1,10));
%產生乙個a至b之間的隨機矩陣,大小為1x5;

% a + (b-a) * rand(1,5); 如:a,b = 2,5

s5 = 2 + (5-2) * rand(1,5);

3. linspace:產生線性間隔向量

%建立乙個從1到10的100個線性間隔的向量,大小為1x100;

s6 = linspace(1,10);

%建立乙個從0到10的6=[(10-0)/2+1]個線性間隔數的向量,大小為1x6;

s7 = linspace(0,10,6);

4. unifrnd:產生連續統一的隨機數字

%建立乙個大小從0到2之間的隨機矩陣,size為1x5;

s8 = unifrnd(0,2,1,5);

%從(0,1)(1,2)(2,3)...中分別產生乙個隨機數,組成隨機矩陣;

%如:從(0,1)(1,2)(2,3)(3,4)(4,5)分別產生乙個隨機數組成矩陣;

a = 0:4;

b = 1:5;

s9 = unifrnd(a,b);

5. unidrnd:產生離散的統一隨機數字

%建立乙個大小從1到10之間的隨機矩陣,size為2x5;

s10 = unidrnd(10,2,5);

%產生乙個10以內的隨機數;

s11 = unidrnd(10);

s12 = unidrnd(10);

s13 = unidrnd(10);

MATLAB中生成隨機數方法總結

1.randi 產生均勻分布的偽隨機整數 產生乙個1至10之間的隨機矩陣,大小為2x5 s1 randi 10,2,5 產生乙個 5至5之間的隨機矩陣,大小為1x10 s2 randi 5,5 1,10 2.rand 產生均勻分布的偽隨機數 產生乙個0至1之間的隨機矩陣,大小為1x5 s3 rand...

matlab中生成隨機數的相關知識

randperm 函式 功能 用於生成從1到n的隨機整數,並且沒有重複,它本質上是乙個隨機排序的函式 用法 1.randperm n 隨機生成從1到n的不重複的整數 2.randperm n,k 隨機生成k個在區間 1,n 之間的不重複的整數 randi 函式 功能 用於生成服從均勻分布的偽隨機整數...

ios 中生成隨機數

ios 有如下三種隨機數方法 1.srand unsigned time 0 不加這句每次產生的隨機數不變 int i rand 5 2.srandom time 0 int i random 5 3.int i arc4random 5 注 rand 和random 實際並不是乙個真正的偽隨機數發...