Como seleciono linhas por dois critérios em data.table em R
Digamos que eu possua uma tabela de dados e desejo selecionar todas as linhas em que a variável x tem o valor de b. Isso é fáci
library(data.table)
DT <- data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9)
setkey(DT,x) # set a 1-column key
DT["b"]
A propósito, parece que é necessário definir uma chave, se a chave não estiver definida como x, isso não funcionará. A propósito, o que aconteceria se eu definisse duas colunas como chaves?
e qualquer forma, seguindo em frente, digamos que desejo selecionar todas as linhas em que a variável x era a ou b
DT["b"|"a"]
não funcion
Mas o seguinte funciona
DT[x=="a"|x=="b"]
Mas que usa a varredura de vetor a la data frames. Ele não usa a pesquisa binária. Eu acho que para conjuntos de dados menores, isso não import
Isso é o que devo fazer ou desconheço a sintaxe data.table?
E mais uma coisa. Existem exemplos de procedimentos de seleção (ou subconjunto) booleanos mais complexos com data.tabl
Eu sei que sempre posso voltar a usar a função subconjunto (), pois uma tabela data.t comportará um data.frame, se necessári