matlab中的unique

来源:互联网 发布:程序员写博客的好处 编辑:程序博客网 时间:2024/05/20 00:50

向量中的那些唯一的元素

语法

b = unique(A)
b = unique(A,'rows')
[b,m,n] = unique(...)

描述

1、b = unique(A)  返回的是和A中一样的值,但是没有重复元素。产生的结果向量按升序排序。A可以是一个字符串的单元阵列。

2、b = unique(A,'rows')  返回的是A中的唯一的行数。

3、[b,m,n] = unique(...)  也返回索引向量m和n,使得B = A(M)和A=B(Nm的每一个元素是最大的下标,使得B = A(M)。对于行的组合B = A(M:)和A=B(N:)

示例

A = [1 1 5 6 2 3 3 9 8 6 2 4]
A =
1     1     5     6     2     3     3     9     8     6     2     4

[b,m,n] = unique(A)
b =
      1     2     3     4     5     6     8     9
m =
      2    11     7    12     3    10     9     8
n =
1     1     5     6     2     3     3     8     7     6     2     4

A(m)
ans =
      1     2     3     4     5     6     8     9

b(n)
ans =
1     1     5     6     2     3     3     9     8     6     2     4

因为NaN是互相等的他们作为独特的元素对待

unique([1 1 NaN NaN])
ans =
     1 NaN NaN

0 0