Unique values in array
returns the same data as in C
= unique(A
)A
, but with no repetitions.
C
is in sorted order.
If A
is a table or timetable, then
unique
returns the unique rows in
A
in sorted order. For timetables,
unique
takes row times and row values into
account when determining whether rows are unique, and sorts the
output timetable C
by row times.
specifies which indices to return in case of repeated values.
C
= unique(A
,occurrence
)occurrence
can be 'first'
(default) or
'last'
.
[
also returns index vectors C
,ia
,ic
] = unique(___)ia
and ic
using any of the previous syntaxes.
If A
is a vector, then C =
A(ia)
and A = C(ic)
.
If A
is a matrix or array, then C =
A(ia)
and A(:) = C(ic)
.
If the 'rows'
option is specified, then
C = A(ia,:)
and A =
C(ic,:)
.
If A
is a table or a timetable, then
C = A(ia,:)
and A =
C(ic,:)
.
[
,
C
,ia
,ic
]
= unique(A
,'legacy')[
,
C
,ia
,ic
]
= unique(A
,'rows','legacy')[
,and
C
,ia
,ic
]
= unique(A
,occurrence
,'legacy')[
preserve the behavior of the C
,ia
,ic
]
= unique(A
,'rows',occurrence
,'legacy')unique
function from R2012b
and prior releases.
The 'legacy'
option does not support categorical arrays,
datetime arrays, duration arrays, calendarDuration arrays, tables, or
timetables.
Use uniquetol
to find unique floating-point numbers using
a tolerance.
To find unique rows in tables or timetables with respect to a subset of variables, you can use
column subscripting. For example, you can use
unique(A(:,
, where
vars
))vars
is a positive integer, a vector of positive
integers, a variable name, a cell array of variable names, or a logical vector.
Alternatively, you can use vartype
to create a subscript
that selects variables of a specified type.