我有一个数组a
如下:
a = [ 1 2; 3 4; 1 2 ];
我想删除在中多次出现的所有行a
并得到c
:
c = [ 3 4 ];
请注意,这与保留唯一行不同,因为我根本不希望出现重复行。我怎样才能做到这一点?
第三个输出为unique https://www.mathworks.com/help/matlab/ref/unique.html给出原始数组中唯一行的索引。你可以使用它accumarray https://www.mathworks.com/help/matlab/ref/accumarray.html计算出现次数,可用于选择仅出现一次的行。
例如:
A = [1 2; 3 4; 1 2];
[uniquerow, ~, rowidx] = unique(A, 'rows');
noccurrences = accumarray(rowidx, 1);
C = uniquerow(noccurrences==1, :);
返回:
>> C
C =
3 4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)