matlab矩陣中如何去掉重復的行;如何找到相同的行,並找到其位置


找到了2個函數:unique和ismember

1. 去掉其中的重復行:unique

例子:

IDX = [1,2,3;
       2,3,1;
       1,2,3;
       2,3,1;
       1,1,1;
       1,1,1];
classNo = unique(IDX,'rows');  

 

2. 在matlab中找到相同的行,並找到其位置:ismember

 

例子:

IDX = [1,2,3;
       2,3,1;
       1,2,3;
       2,3,1;
       1,1,1;
       1,1,1];
classNo = unique(IDX,'rows');  
a = [1,2,3];
b = [1,5,4];
[tfa,loca] = ismember(a,classNo,'rows')
[tfb,locb] = ismember(b,classNo,'rows')

說明:如果找不到,編號返回為0(比如途中locb)。

 

參考:http://blog.csdn.net/loveaborn/article/details/8486010


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM