我有两个数据集,其中几乎没有相同的列(块,数字(。一个数据集的行数比另一个数据集多。我只想识别两组之间不同的那些行。
block <- c(1:10)
number <- c(1:10)
tray <- c(1:10)
df1 <- data.frame(block, number, tray)
block <- c(1:12)
number <- c(1:12)
key <- c(1:12)
df2 <- data.frame(block, number, key)
如果我使用library(compare) compare(df1, df2)
它会生成所有FALSE
..可能是因为它们在三列之一中有所不同。我只希望它通过块和数字进行比较,以获得它在块 11、12 数字 11、12 中的不同
您可以使用dplyr
中的anti_join
来做到这一点:
dplyr::anti_join(df2, df1, by = c("block", "number"))
# block number key
#1 11 11 11
#2 12 12 12