1樓:匿名使用者
一句話bai的寫法可以
用:a=[23,44,52,99];
a(ceil(rand*4))
其實沒必要du過於糾zhi結用一句,先抽下標的dao做法回可讀性更好。
關於ceil(rand*4)抽樣的答均勻性,可以用下面語句很簡單地進行驗證:
hist(ceil(rand(1000000,1)*4))
2樓:匿名使用者
(randi(4,1,1)==(1:4))*[23 44 52 99]'
或者a=[23 44 52 99];
a(randi(end,1,1))
matlab如何從一組資料中無重複的隨機選取幾個數
3樓:依然特雷西
1、首bai
先知道matlab中刪除矩陣重複資料du
,可以用到unique函式,數
zhi組的唯一值,在dao
命令列視窗下內help unique,可以看到函式容的具體用法。
2、在命令列視窗中新建一個a=[1 3 4 5 6 6 7 8 9 8]矩陣,裡面有重複資料6,8。
3、輸入unique(a),按回車鍵,可以看到a矩陣重複資料全部刪除了,矩陣元素全部都是唯一值。
4、如果我們輸入unique(b),按回車鍵,會得到一列刪除重複資料後的結果。
4樓:匿名使用者
使用randperm函式。詳細參閱help檔案。
a=randperm(10);
b=a(1:5);
aa=a(b);
那麼aa就是所取出的隨機樣本。
5樓:匿名使用者
temp=randperm(n,m);%從1-n個元素中隨即取出m個元素,m的值由你指定
不過2010版本的不行,2011b才能這樣用這個函式
6樓:延靖茹林
用randperm
我給你舉個例子吧:>>
b=1:10b=1
2345
6789
10>>
a=randperm(10)a=1
91083
7526
4>>b(a(1:5))ans=1
91083
matlab如何在一組陣列中隨機抽取一個數?
7樓:匿名使用者
s=[1 3 5 7 9];%陣列
n=length(s);%陣列長度
i=ceil(rand(1,1)*n)
s(i)
8樓:毓興有渠緞
我的建議是先得到你陣列的大小a,然後產生個從1到a的隨機數,這專樣也能取出
屬來一個數。
clc;
y=[1,8,6,8,4,2,9,2,4,7,3,8,4,2,9,3,4,9,3];
a = size(y,2);
b = randi([1,a])
y(b)
matlab中,怎樣把一組給定的資料隨機排列?
9樓:四舍**入
可以參考下面的**:
x=x(randperm(numel(x)))numel(x)獲得變數長度
randperm(n)產生長度為n的隨機數列 如:
randperm(4)
ans=
3 2 1 4
x(...) 取得x中相應元素產生新數列
10樓:
使用函式randperm()即可實現。
例:a = [7,6,3,9,10]; % 試驗矩陣【用於試驗,矩陣元素為待隨機排列的資料】
randindex_a = randperm(5); % 生成1到5這幾個數的隨機排列
b = a(randindex_a); % 隨機排列後的矩陣
每一行**執行結果:
>>a = [7,6,3,9,10]
a = 7 6 3 9 10
>>randindex_a = randperm(5)randindex_a =1 4 5 3 2>> b = a(randindex_a)b =7 9 10 3 6
擴充套件資料函式randperm()
1、語法格式:r = randperm(n)2、函式功能:將數字1:n進行隨機排列,排列結果儲存在行向量內3、例:輸入 randperm(3)
輸出 3 1 2
4、使用的方法:
利用索引值的隨機排列,生成所有元素的隨機排列
11樓:
x=x(randperm(numel(x)))numel(x)獲得變數長度
randperm(n)產生長度
為n的隨機數列 如:
randperm(4)
ans=
3 2 1 4
x(...) 取得x中相應元素產生新數列
12樓:匿名使用者
同意2樓的觀點
就是這樣,當然你也可以使用rand等生成其他隨機數
matlab從一維陣列中隨機抽取一個數,並且返回這個數的位置
13樓:木生子識時務
我的建議是bai先得到你陣列du的大小zhia,然後產生個從dao 1 到 a的隨機數,這樣專
也能取出來一個數。
屬clc;
y=[1,8,6,8,4,2,9,2,4,7,3,8,4,2,9,3,4,9,3];
a = size(y,2);
b = randi([1,a])
y(b)
14樓:匿名使用者
t=rand(length(a),1)*(length(a)+1);
a(t)
在matlab中如何在一個陣列中隨機選取n個數?
15樓:匿名使用者
b=zeros(1,5);
for i=1:5
b(i)=a(int32(1+(length(a)-1)*rand));
endb
16樓:匿名使用者
你只需要把陣列的序號挑出來然後隨機出現就可以了
給定一個陣列,如何讓matlab生成一個這個陣列中的一個隨機數?
17樓:匿名使用者
x=[10 20 30];
x(randi(length(x)));
其中randi(length(x))
生成從1~bai(x的長度)這幾個自然
du數中隨即zhi的dao一個數
讓這個數作為下回標,就可以從答x中隨即選取一個數x(randi(length(x)))
18樓:匿名使用者
i = 0; while i == 0 i = 10 * randint(1,1,4); %%隨機出
bai現du
zhi0 10 20 30, 出現
0和非dao0的概版率均等權
19樓:思孕
x=[10 20 30];
x(ceil(rand(1)*3))
20樓:鈕秀英御卿
你給的例子中,**和條件對應不起來。
滿足你需要的**如下:
a=5;b=2;d0=1;d=2; % 常數定義版n=10; % 要生成的隨機數個數權x = 1:1:5;
for j=1:length(x)
sigma = d0 + d * x(j); % 隨機數方差
ex = normrnd(0, sigma, n, 1); % 隨機數
y(:,j)= a + b * x(j) + ex;
enddisp(y) % 顯示結果
如有問題可繼續追問,滿意的話希望採納。
Excel中如何從一組資料中隨機提取資料
1.在單元格e1輸入公式 offset a 1,randbetween 0,9 然後回車 即按 enter 鍵 你會發現單元格e1為隨機從a1 a10提取的一內個數。2.將滑鼠放到容單元格e1的右下角,等到滑鼠標誌變為小十字,按下滑鼠左鍵然後往下拖,你會發現拖出的資料都為隨機從a1 a10提取的一個...
excel怎麼從一組資料中隨機抽取不重複的數
假設從a1到a100中隨機取5 個不重複數,b2公式 if row a1 1,index a 1 a 100,randbetween 1,100 index a 1 a 100,all if countif b 1 b1,a 1 a 100 0,row 1 100 randbetween 1,101...
excel中,0數隨機組合數形成一組數,怎麼完成
先看結果 步驟 1 在d2鍵入公式 rand 公式下拉至專d11,產生10個隨機數列屬 2 在e2鍵入公式 rank d2,d 2 d 11,1 1公式下拉至e11,產生0 9隨機數列,使用rank 函式是關鍵,保證得到的數列每個不重複 3 在f2鍵入公式 if e2 0,e11,e2 取萬位數字,...