【发布时间】:2019-07-01 09:38:40
【问题描述】:
我有一个关于如何根据列中的值以编程方式从 data.table 中选择行的问题。
假设我有下面的 Data.table
library(data.table)
DT <- data.table(x=rep(c("a","b","c"),each=3), y=c(1,3,6), v=1:9)
现在我想选择 y = 3 and v = 2 所在的行
通常我可以使用下面的代码
> DT[y==3& v==2]
x y v
1: a 3 2
但在我的情况下,这样的选择标准本身就是一个变量,并放入不同的DF
> DF = data.frame('1' = c('y', 'v'), '2' = c(3,2)); DF
X1 X2
1 y 3
2 v 2
在这种情况下,上面X2 的值会改变,偶数行也是可变的(即假设我有一个更大的DT 和更多的列,DF 中的一些额外行可能会基于DF的生成标准)
有没有办法使用DF 以编程方式选择DT 中的行?
【问题讨论】:
标签: r data.table