我有一个包含多个变量的数据集,但是我想要保留那些基于两列相同的行。以下是我想要执行的示例:
a <- c(rep('A',3), rep('B', 3), rep('C',3))
b <- c(1,1,2,4,4,4,5,5,5)
df <- data.frame(a,b)
a b
1 A 1
2 A 1
3 A 2
4 B 4
5 B 4
6 B 4
7 C 5
8 C 5
9 C 5
我知道如果我使用复制函数,我可以得到:
df[!duplicated(df),]
a b
1 A 1
3 A 2
4 B 4
7 C 5
但是由于列a
上的'A'等级在列b
中没有唯一值,因此我想要删除这两个观察值,得到一个新的数据框:
a b
4 B 4
7 C 5
我不介意在b中有重复的值,只要对于
a
上的每个相同级别,在b
中都有相同的值。
有没有办法做到这一点?谢谢!