vec_duplicate {vctrs} | R Documentation |
Find duplicated values
Description
-
vec_duplicate_any()
: detects the presence of duplicated values, similar toanyDuplicated()
. -
vec_duplicate_detect()
: returns a logical vector describing if each element of the vector is duplicated elsewhere. Unlikeduplicated()
, it reports all duplicated values, not just the second and subsequent repetitions. -
vec_duplicate_id()
: returns an integer vector giving the location of the first occurrence of the value.
Usage
vec_duplicate_any(x)
vec_duplicate_detect(x)
vec_duplicate_id(x)
Arguments
x |
A vector (including a data frame). |
Value
-
vec_duplicate_any()
: a logical vector of length 1. -
vec_duplicate_detect()
: a logical vector the same length asx
. -
vec_duplicate_id()
: an integer vector the same length asx
.
Missing values
In most cases, missing values are not considered to be equal, i.e.
NA == NA
is not TRUE
. This behaviour would be unappealing here,
so these functions consider all NAs
to be equal. (Similarly,
all NaN
are also considered to be equal.)
Dependencies
See Also
vec_unique()
for functions that work with the dual of duplicated
values: unique values.
Examples
vec_duplicate_any(1:10)
vec_duplicate_any(c(1, 1:10))
x <- c(10, 10, 20, 30, 30, 40)
vec_duplicate_detect(x)
# Note that `duplicated()` doesn't consider the first instance to
# be a duplicate
duplicated(x)
# Identify elements of a vector by the location of the first element that
# they're equal to:
vec_duplicate_id(x)
# Location of the unique values:
vec_unique_loc(x)
# Equivalent to `duplicated()`:
vec_duplicate_id(x) == seq_along(x)