Compare two vectors

vec_compare(x, y, na_equal = FALSE, .ptype = NULL)

Arguments

x, y

Vectors with compatible types and lengths.

na_equal

Should NA values be considered equal?

.ptype

Override to optionally specify common type

Value

An integer vector with values -1 for x < y, 0 if x == y, and 1 if x > y. If na_equal is FALSE, the result will be NA if either x or y is NA.

S3 dispatch

vec_compare() is not generic for performance; instead it uses vec_proxy_compare() to

Examples

vec_compare(c(TRUE, FALSE, NA), FALSE)
#> [1] 1 0 NA
vec_compare(c(TRUE, FALSE, NA), FALSE, na_equal = TRUE)
#> [1] 1 0 -1
vec_compare(1:10, 5)
#> [1] -1 -1 -1 -1 0 1 1 1 1 1
vec_compare(runif(10), 0.5)
#> [1] -1 -1 -1 -1 -1 1 1 1 -1 -1
vec_compare(letters[1:10], "d")
#> [1] -1 -1 -1 0 1 1 1 1 1 1
df <- data.frame(x = c(1, 1, 1, 2), y = c(0, 1, 2, 1)) vec_compare(df, data.frame(x = 1, y = 1))
#> [1] -1 0 1 1