matlab矩阵中如何去掉重复的行;如何找到相同的行,并找到其位置

找到了2个函数:unique和ismember

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

matlab矩阵中如何去掉重复的行;如何找到相同的行,并找到其位置_第1张图片

例子:

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

matlab矩阵中如何去掉重复的行;如何找到相同的行,并找到其位置_第2张图片

 

例子:

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

转载于:https://www.cnblogs.com/Deribs4/p/5399213.html

你可能感兴趣的:(matlab矩阵中如何去掉重复的行;如何找到相同的行,并找到其位置)