通过列表中传递的条件过滤data.table

时间:2018-05-01 00:05:29

标签: r data.table

我想知道是否有更好的方法来进行此过滤?只是试图找到一个类似于pandas查询的方法来传递字典(kwagrs**

library(data.table)
setDT(dat4) 

参数在此处的列表中传递:

ab <- list(Clinic=TRUE, Hospital=FALSE)
ab <- sapply(ab, function(x) {
  var = names(ab)[parent.frame()$i[x]]
  sprintf('%s==%s',var,x)
})
ab <- paste(ab, collapse = ' & ')

ad <- dat4[eval(parse(text=ab)),]

我正在寻找一种编程方式来进行这种子集化:

subset(dat4, Clinic == TRUE & Hospital == FALSE)

0 个答案:

没有答案