Общие элементы:
a[a %in% b] # or b[b %in% a]
[1] "f" "g" "h" "i" "j"
Уникальный к:
a[!a %in% b] # or a[b %in% a]
[1] "a" "b" "c" "d" "e"
Уникальной б:
b[!b %in% a] # or b[a %in% b]
[1] "k" "l" "m" "n" "o"
Примечания
Стоит отметить, что intersect
и setdiff
будет отбрасывать любые дублированные значения аргументов. В то время как %in%
будет хранить дубликаты. Поэтому, если у нас есть дублированные значения, мы получим разные результаты. Например, indroducing дублированный элемент в векторе A:
a <- c(a, "a")
[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "a"
# Duplicated element a is discarded
setdiff(a, b)
[1] "a" "b" "c" "d" "e"
# Keeps duplicated element a
a[!a %in% b]
[1] "a" "b" "c" "d" "e" "a"
'пересекаются (а, б); setdiff (a, b); setdiff (b, a) ' –