如果他们不符合条件,我会尝试从data.table文件中删除行。基本上,我想删除所有不具有重复18次的grp标签的行(标签32重复18次,它在示例中不可见)。在下面的例子中,grp标签" 33"只重复4次。因此,我想自动删除这4行。
输入:
library(data.table)
x <- fread(x)
tail(x)
V1 V2 V3 grp
1: uc007cih.1 575 175 32
2: uc007cih.1 576 142 32
3: uc007cih.1 577 104 33
4: uc007cih.1 578 99 33
5: uc007cih.1 579 95 33
6: uc007cih.1 580 94 33
grp标签可以改变,可能会有几个重复,但如果它们不存在18次,它们应该基本上被删除。我怎么能这样做?
答案 0 :(得分:3)
你走了:
x.filtered = x[, if(.N == 18) .SD, by = grp]