我在R中有一个名为A的数据表,它有三列Col1,Col2和Col3.另一个名为B的表也具有相同的三列.我想删除表A中的所有行,其中对(Col1,Col2)存在于表B中.我尝试过,但我不知道如何执行此操作.最近几天我被困在这上面了.
谢谢,
library(data.table) A = data.table(Col1 = 1:4, Col2 = 4:1, Col3 = letters[1:4]) # Col1 Col2 Col3 #1: 1 4 a #2: 2 3 b #3: 3 2 c #4: 4 1 d B = data.table(Col1 = c(1,3,5), Col2 = c(4,2,1)) # Col1 Col2 #1: 1 4 #2: 3 2 #3: 5 1 A[!B, on = c("Col1", "Col2")] # Col1 Col2 Col3 #1: 2 3 b #2: 4 1 d
我们可以用 anti_join
library(dplyr) anti_join(A, B, by = c('Col1', 'Col2'))