2013-04-16 41 views
2

唯一行我有這僅在兩列不同的同一行的矩陣,就像這樣:這對最後一列的最大元素在MATLAB

A = [2 3 3 3 1 0.7; 
    2 3 3 3 2 0.4; 
    3 2 2 2 1 0.8; 
    3 2 2 2 3 0.3] 

現在我需要選擇唯一行,其有column1,2,3,4的相同的元件和具有最大元件column6,如:

Response: [2 3 3 3 1 0.7; 
      3 2 2 2 1 0.8] 

回答

3

根據第一4列排序,並在根據第六降序。然後,選擇由前4列決定的組內的第一次出現。

out  = sortrows(A,[1:4,-6]); 
[~,idx] = unique(out(:,1:4),'rows'); 
out(idx,1:5) 
+0

這是行不通的,因爲不能保證您爲第5行輸入正確的值 – Jonas

+0

非常感謝您的回覆!你能告訴我如何刪除我的「out」變量中的最後一列嗎?我的意思是,如果我想將5列(1,2,3,4,5)列入列表,我應該怎麼做? – user2286747

+1

@ user2286747:你寫'out(:,1:5)' – Jonas

相關問題