Что произойдет, если я хочу выбрать все строки в таблице 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 == "a", но используя двоичный поиск
DT["a"]
Это красиво, но я хочу, чтобы это было противоположно. Я хочу, чтобы все строки не были "а", другими словами, где x!= "A"
DT[x!="a"]
Это векторное сканирование. Вышеприведенная линия работает, но использует векторное сканирование. Я хочу использовать двоичный файл. Я ожидал, что следующее будет работать, но, увы...
DT[!"a"]
DT[-"a"]
Вышеуказанные два не работают и пытаются сыграть с nomatch, и я нигде не стал.