我有一个 data.table
我想根据一些不平等标准进行过滤:
dt <- data.table(A=letters[1:3], B=2:4)
dt
# A B
# 1: a 2
# 2: b 3
# 3: c 4
dt[B>2]
# A B
# 1: b 3
# 2: c 4
以上情况适用于矢量扫描解决方案。但我无法弄清楚如何将它与列的变量名称结合起来:
mycol <- "B"
dt[mycol > 2]
# A B // Nothing has changed
# 1: a 2
# 2: b 3
# 3: c 4
我该如何解决这个问题?我知道我可以通过设置密钥使用二进制搜索 setkeyv(dt, mycol)
但是我看不出基于某些不等式标准进行二元搜索的方法。