R data.table juntar-se com condições de desigualdade

Eu gostaria de subconjunto meus dados com base em várias condições de desigualdade usando o pacote data.table. Os exemplos no manual data.table mostram como fazer isso com variáveis ​​de caractere, mas não com desigualdades numéricas. Eu também vejo como fazer isso usando a função de subconjunto. Mas eu realmente gostaria de aproveitar a velocidade de pesquisa binária do data.table. Abaixo está um exemplo do que estou tentando fazer.

library(data.table)

data <- data.table(X=seq(-5,5,1), Y=seq(-5,5,1), Z=seq(-5,5,1))
data

setkey(data, X, Y, Z)

#the data.frame way
data[X > 0 & Y > 0 & Z > 0]

#the data.table way (does not work as I expected)
data[J(>0, >0, >0)]

questionAnswers(2)

yourAnswerToTheQuestion