如何根据另一个数据框删除行?

时间:2014-06-30 19:11:59

标签: r dataframe

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

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))

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

1 a 1
3 a 2
4 b 3
7 c 2
8 c 3
9 c 2

1 个答案:

答案 0 :(得分:1)

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