MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]删除矩阵中相同的行 (https://www.labfans.com/bbs/showthread.php?t=7133)

rain1206 2009-03-27 16:05

[求助]删除矩阵中相同的行
 
a=[1 0;1 0;1 0;2 1;1 2;1 2; 3 1;2 1;2 1]
[m,n]=size(a);
for i=1:m-1
if a(i+1,:)==a(i,:)
a(i+1,:)=[];
m=m-1;
end
end
a

??? Index exceeds matrix dimensions.

程序有错,望高手给改正一下,Thanks!

zhyanchao 2009-03-27 17:36

回复: [求助]删除矩阵中相同的行
 
直接用unique(a,'rows')即可

laosam280 2009-03-27 23:43

回复: [求助]删除矩阵中相同的行
 
a=[1 0;1 0;1 0;2 1;1 2;1 2; 3 1;2 1;2 1];
[m,n]=size(a);
b=[m,n];
for i=1:1:8
if (a(i+1,1)==a(i,1))&&(a(i+1,2)==a(i,2))
a(i,:)=8;
end
end
a
然后找到这样的数字8的坐标,删除就可以了。因为都是循环,我就不写了


所有时间均为北京时间。现在的时间是 14:25

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.