r - 子集数据帧,其中数组中的字段

时间:2016-04-13 01:14:44

标签: r subset

是否可以在R中创建子集函数,以检查列值是否在项列表中。

这可能看起来像(我已经检查过,但这不起作用):

sub <- subset(data, field IN c(1,2,3))

1 个答案:

答案 0 :(得分:1)

使用data.table,我们将'data.frame'转换为'data.table',设置key列,并根据值向量(.(1:3))对行进行子集化

library(data.table)
setDT(data, key="field")[.(1:3), nomatch=0]

数据

set.seed(48)
data <- data.frame(field = sample(1:5, 10, replace=TRUE), value = rnorm(10))