Мне трудно понять, почему ==
и %in%
будут давать разные результаты при применении к векторам символов, которые зависят, по-видимому, только от кодирования векторов. Пример:
a <- 'Köln'
Encoding(a) <- 'unknown'
Encoding(a)
# [1] "unknown"
b <- a
Encoding(b) <- 'UTF-8'
a == b
# [1] TRUE
a %in% b
# [1] FALSE
Обновление
Похоже, что результат также зависит от платформы. Возвращаются два оператора:
-
TRUE
иFALSE
на R 3.3.0 на OS X 10.11.5 -
FALSE
иFALSE
на R 3.3.0 на Windows 10 (64 бит) -
TRUE
иTRUE
на R 3.2.3 на CentOS 7
Я начинаю думать, что это ошибка.