我有一个像这样的数据框 -
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
包的解决方案。
最佳答案
这是使用 dplyr >= 0.5
的解决方案。
library(dplyr)
set.seed(123)
df <- data.frame(
x = sample(0:1, 10, replace = T),
y = sample(0:1, 10, replace = T),
z = 1:10
)
> df %>% distinct(x, y, .keep_all = TRUE)
x y z
1 0 1 1
2 1 0 2
3 1 1 4
关于使用 dplyr 删除重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22959635/