有一种方法可以删除重复的行...
http://www.cookbook-r.com/Manipulating_data/Finding_and_removing_duplicate_records/
我有兴趣做同样的事情,但是我的数据框中的因子水平。
test <- data.frame(fact = c('a','a','a','b','b','b','b','c','c'), id = c('1','1','2','1','2','2','3','1','2'), value = c(1:9))
我想减少我的测试数据框以包含以下内容....
fact id value
1 a 1 1
3 a 2 3
4 b 1 4
5 b 2 5
7 b 3 7
8 c 1 8
9 c 2 9
即,仅存在id不重复的第一行。 皱纹是它只是因子水平的重复。
答案 0 :(得分:2)
library(data.table)
setDT(test)[,.SD[!duplicated(id)],by=fact]
fact id value
1: a 1 1
2: a 2 3
3: b 1 4
4: b 2 5
5: b 3 7
6: c 1 8
7: c 2 9
答案 1 :(得分:1)
library(dplyr)
test%>%group_by(fact,id)%>%distinct(id)