Как выполнить отрицательный / nomatch / обратный поиск в data.table?
Что произойдет, если я хочу выбрать все строки в data.table, которые не содержат определенного значения в ключевой переменной, с помощью бинарного поиска? Кстати, какой правильный жаргон для того, что я хочу сделать? Это "nojoin"? Является ли это "отрицательным отбором"?
DT = data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9)
setkey(DT,x)
Давайте сделаем положительный выбор для всех строк, где x == & quot; a & quot; но используя бинарный поиск
DT["a"]
Это прекрасно, но я хочу противоположности этому. Я хочу, чтобы все строки не были "а" другими словами, где x! = & quot; a & quot;
DT[x!="a"]
Это векторное сканирование. Приведенная выше строка работает, но использует векторное сканирование. Я хочу использовать двоичный файл. Я ожидал следующего, чтобы работать, но увы ...
DT[!"a"]
DT[-"a"]
Вышеперечисленные два не работают, а попытки играть с nomatch меня ни к чему не привели.