在 8x8 矩阵上使用此方法:
>> [junk,index] = unique(data,'first'); %# Capture the index, ignore junk
>> data(sort(index)) %# Index data with the sorted index
以 64x1 格式输出格式(如果未找到重复)或 nx1(如果找到一些重复)。
我的问题是如何在不排序的情况下保持矩阵格式?
我需要它来检查唯一(行)是否有重复项而不是唯一的单元格。并删除重复的行但保留格式(不排列/排序)。
如果您想要唯一的行,同时保持原始顺序,请尝试以下操作:
[M,ind] = unique(data, 'rows', 'first');
[~,ind] = sort(ind);
M = M(ind,:);
Example:
>> data = randi(2,[8 3]);
data =
1 2 1
1 2 1
1 1 2
2 2 2
1 1 1
2 2 2
2 2 2
2 1 1
>> M
M =
1 2 1
1 1 2
2 2 2
1 1 1
2 1 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)