1樓:依然特雷西
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),按回車鍵,會得到一列刪除重複資料後的結果。
2樓:匿名使用者
使用randperm函式。詳細參閱help檔案。
a=randperm(10);
b=a(1:5);
aa=a(b);
那麼aa就是所取出的隨機樣本。
3樓:匿名使用者
temp=randperm(n,m);%從1-n個元素中隨即取出m個元素,m的值由你指定
不過2010版本的不行,2011b才能這樣用這個函式
4樓:延靖茹林
用randperm
我給你舉個例子吧:>>
b=1:10b=1
2345
6789
10>>
a=randperm(10)a=1
91083
7526
4>>b(a(1:5))ans=1
91083
matlab中,怎樣把一組給定的資料隨機排列?
5樓:四捨**入
可以參考下面的**:
x=x(randperm(numel(x)))numel(x)獲得變數長度
randperm(n)產生長度為n的隨機數列 如:
randperm(4)
ans=
3 2 1 4
x(...) 取得x中相應元素產生新數列
6樓:
使用函式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、使用的方法:
利用索引值的隨機排列,生成所有元素的隨機排列
7樓:
x=x(randperm(numel(x)))numel(x)獲得變數長度
randperm(n)產生長度
為n的隨機數列 如:
randperm(4)
ans=
3 2 1 4
x(...) 取得x中相應元素產生新數列
8樓:匿名使用者
同意2樓的觀點
就是這樣,當然你也可以使用rand等生成其他隨機數
matlab 哪個函式可以從一組資料中隨機抽取一部分出來
9樓:匿名使用者
假設你原來的資料存在變數a中
如果,你想從a中隨機抽取固定n個數
c=randperm(numel(a));
b=a(c(1:n));
b就是從a中隨機抽取的n個數(n應該小於a中元素的總個數)
10樓:釋奧凌茜
1.使用xlsread讀取進matlab
得到矩陣data
2.獲取列數
col= size(data,2);3.
隨機提取一列回資料randcol
=randi(col)
4.求標準差答
std(data(:,randcol ))
11樓:戴爾
matlab裡有現成的函du數 datasample, 呼叫方法:zhi
y = datasample(data,k,dim)例子:dao
data=randn(10,200); % 生成尺寸為10*200的資料回
y = datasample(data,5,1); %從data中隨機抽取5行資料
--------------
參考:頁鏈結答">網頁鏈結
matlab如何把n個數不重複地隨機分為m組
12樓:
用crossvalind函式。具體用法看幫助文件。
indices =crossvalind('kfold', length(a), 10);
13樓:匿名使用者
>> a = randperm(100);
r = reshape(a,10,10)
r =23 84 87 66 77 69 63 70 62 19 91 14 86 21 32 53 65 89 44 92 30 49 28 74 6 76 95 13 40 61 7 50 96 56 34 73 39 31 72 17 41 26 67 43 97 100 42 5 36 12 20 29 94 15 3 59 51 11 58 33 98 93 52 18 60 27 78 80 57 16 90 38 48 35 45 2 55 22 88 81 24 25 71 47 82 10 75 64 83 85 54 1 68 9 37 79 46 8 4 99
matlab中如何實現在資料矩陣中隨機取乙個數,注意是乙個數。解決問題了有補加分
14樓:匿名使用者
a=magic(5);
%a為資料矩陣,你改你的資料即可。
n=numel(a);
a(ceil(rand(1)*n))
15樓:匿名使用者
假設你的矩陣為a
[m,n]=size(a)%得到a的大小
k=m*n;%a中總的元素個數
a=a(ceil(rand()*k))%產生乙個k以內的隨機正整數,取a的第k個數!
16樓:高則寶
隨機x,y然後取出來
matlab 如何篩選一組數中重複的數
17樓:幽蘭書生
例如bai:
x =2 2 6 52 3 2 4
3 4 3 4
4 4 4 5
第一步:du
找到唯一的.
x=unique(x);
x =234
56第二步zhi:查詢相應位dao置
for i=1:length(x)
[m n]=find(x==x(i));
if length(m)>=2
disp(strcat(num2str(x(i)),'重複內',num2str(length(m)),'次','位置為:' ,mat2str([m n])))
endend
結果如容下:
18樓:匿名使用者
a = randint(4,10,[1 20]);
u = unique(a);
m = size(u,1);
id = 1;
for k = 1:m
[ia,ib,ic] = find(u(k)==a);
if sum(ic)>1
r = u(k);
r = [ia ib];
r = sum(ic);
id = id+1;
end;
end;r
matlab如何在一組陣列中隨機抽取乙個數?
19樓:匿名使用者
s=[1 3 5 7 9];%陣列
n=length(s);%陣列長度
i=ceil(rand(1,1)*n)
s(i)
20樓:毓興有渠緞
我的建議是先得到你陣列的大小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)
excel如何從一組資料中隨機選擇一組資料
1 電腦開啟excel 要在a列中隨機抽取一組資料。2 在c列中輸入公式 3 輸入公式後,回車後,就會隨機生成乙個資料。4 下拉複製公式,就會隨機生成其他資料。5 a列中更改資料,c列中的公式也會隨機改變資料。如下圖例子,在a1 a10中隨機抽取乙個數字 公式 index a a,randbetwe...
matlab中如何對一組資料進行fft變換後得到頻譜圖
1 直接對其使用來ceil函式,源 可以向上取整 即大於等於給定數bai據的最du小整數。2 使用zhifloor函式可以進行向下取dao整。如圖,將矩陣a中的每個元素取小於等於該元素的最大整數。3 使用fix函式則可以去除小數部分。對於大於0的元素相當於floor,對於小於0的元素相當於ceil。...
excel中如何從一組資料中計算出這組資料中每個資料重複出現
假設你的資料區域為a1 a1000,則求a1重複出現的次數公式為 if countif a 1 a 1000,a1 1,a1 出現次數為 countif a 1 a 1000,a1 次!將公式下拉即可 excel中如何從一組資料中計算出這組資料中每個資料重複出現的次數?假設你的資料區域為a1 a10...