如何根据R中另一列中的值找出一列中的错误值?

时间:2013-06-11 20:05:39

标签: r

我在R中有两列数据(例如idmaster_id)。id中的所有值都应该出现在master_id中。但是,我怀疑情况并非如此,我想确定哪些是错误的价值观。我不能只检查数据,因为我正在处理100k的数据。

如何找到错误的值?

2 个答案:

答案 0 :(得分:1)

%in in function可能会派上用场。对于第一组但不是第二组

的情况,它会抛出一个FALSE

E.g。

DF$master_id %in% DF$id 

id是master_id的子集,因此没有对应的master_id值将获得FALSE

或者,看看它的运行方式(来自R帮助文件)

1:10 %in% c(1,3,5,9)

答案 1 :(得分:0)

Here's an answer从2天前开始:

library(data.table)
DF1<-data.frame(x=1:3,y=4:6,t=10:12)
DF2<-data.frame(x=3:5,y=6:8,s=1:3)
library(data.table)
DF1 <- data.table(DF1, key = c("x", "y"))
DF2 <- data.table(DF2, key = c("x", "y"))
DF1[!DF2] # maybe you want this?
DF2[!DF1] # or maybe you want this?