r语言 - 如何根据另一个数据帧删除行



假设我有两个这样的数据帧:

set.seed(123)
a<-data.frame(x=rep(letters[1:3], each=3),
      y=sample(1:3, 9, T)) 
b<-data.frame(x=c("a", "b", "b"),
      y=c(3, 3, 1))

如何删除a × b中的记录?这样的结果:

1 a 1
3 a 2
4 b 3
7 c 2
8 c 3
9 c 2
a[!paste(a$x, a$y) %in% paste(b$x, b$y), ]
##   x y
## 1 a 1
## 3 a 2
## 7 c 2
## 8 c 3
## 9 c 2

相关内容

最新更新