Matlab 中,unique()函数可以去掉重复的元素。
b = unique(A)用来除去所有重复的元素。所以输出结果没有任何重复元素。
b = unique(A, 'rows)保证输出行没有重复
[b, m, n] = unique(A, occurrence)可以指定输出,重复发生的次数。
举例如下:
例1. x = [1,2,3,3,43 4 5 5 6]
unique(x)结果为[1 2 3 4 5 6]
例2. A = [1 1 5 6 2 3 3 9 8 6 2 4]
[b1, m1, n1] = unique(A, 'first') 结果为
b1 =
1 2 3 4 5 6 8 9
m1 =
1 5 6 12 3 4 9 8
n1 =
1 1 5 6 2 3 3 8 7 6 2 4
例3. A = [1 1 5 6 2 3 3 9 8 6 2 4]
[b2, m2, n2] = unique(A, 'last') 结果为
b2 =
1 2 3 4 5 6 8 9
m2 =
2 11 7 12 3 10 9 8
n2 =
1 1 5 6 2 3 3 8 7 6 2 4
您要问的应该是matlab中如何删除一列数据中的重复项并保留其对应列的第一行吧,其步骤如下:1、首先按照矩阵需要按照第一列相同元素删除重复项。
2、其次保留每一个相同元素的重复项所在的第一行即可。
调用unique子函数就可以了a=[887 990
887 991
887 991
888 991
888 991
889 991
889 992
889 992
890 992]
A=unique(a,'rows')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)