Como eu faço uma pesquisa negativa / nomatch / inverse no data.table?
O que acontece se eu quiser selecionar todas as linhas em um data.table que não contêm um valor específico na variável de chave usando a pesquisa binária? A propósito, qual é o jargão correto para o que eu quero fazer? É "nojoin"? É "seleção negativa"?
DT = data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9)
setkey(DT,x)
Vamos fazer uma seleção positiva para todas as linhas em que x == "a" mas usando pesquisa binária
DT["a"]
Isso é lindo, mas eu quero o oposto disso. Eu quero todas as linhas que não são "a" em outras palavras, onde x! = "A"
DT[x!="a"]
Isso é uma varredura de vetores. A linha acima funciona, mas usa varredura vetorial. Eu quero usar binário. Eu estava esperando o seguinte para trabalhar, mas infelizmente ...
DT[!"a"]
DT[-"a"]
Os dois acima não funcionam e tentando jogar com nomatch me levou a lugar nenhum.