ฉันมี data.frame แบบนี้ -
set.seed(123)
df = data.frame(x=sample(0:1,10,replace=T),y=sample(0:1,10,replace=T),z=1:10)
> df
x y z
1 0 1 1
2 1 0 2
3 0 1 3
4 1 1 4
5 1 0 5
6 0 1 6
7 1 0 7
8 1 0 8
9 1 0 9
10 0 1 10
ฉันต้องการลบแถวที่ซ้ำกันตามสองคอลัมน์แรก ผลผลิตที่คาดหวัง -
df[!duplicated(df[,1:2]),]
x y z
1 0 1 1
2 1 0 2
4 1 1 4
ฉันกำลังมองหาวิธีแก้ปัญหาโดยใช้dplyr
แพ็คเกจโดยเฉพาะ
df %>% group_by(x, y) %>% do(head(.,1))