Проверка равенства массивов

Массивы и коллекции / Массивы

n1 <- c(1, 2, 3)
n2 <- c(1, 2, 3)
n3 <- c(3, 2, 1)

# == compares element by element
by_element <- n1 == n3
# by_element = FALSE TRUE FALSE

# identical gives one answer
equal1 <- identical(n1, n2)
# equal1 = TRUE
equal2 <- identical(n1, n3)
# equal2 = FALSE

# Same items in any order
equal3 <- identical(sort(n1), sort(n3))
# equal3 = TRUE

# Same distinct items, repeats forgotten
a <- c(1, 1, 2)
b <- c(1, 2, 2)
set_equal <- setequal(a, b)
# set_equal = TRUE
sorted_equal <- identical(sort(a), sort(b))
# sorted_equal = FALSE

# Types count too: double against integer
same_type <- identical(n1, 1:3)
# same_type = FALSE

cat("by_element =", by_element, "\n")
cat("equal1 =", equal1, "\n")
cat("equal2 =", equal2, "\n")
cat("equal3 =", equal3, "\n")
cat("set_equal =", set_equal, "\n")
cat("sorted_equal =", sorted_equal, "\n")
cat("same_type =", same_type, "\n")