我必须提供几乎相同的客户信息文件。我想验证另一个文件。在R中有一个很好的方法可以确定两个文件中“状态”的不同之处吗?我试图合并这两个文件并将文件2中的状态更改为status2,但遇到了问题,然后开始想知道是否有更好的方法来解决这个问题。 我的数据如下:
file 1 file 2
CustomerID Status CustomerID Status
1709 low 1709 low
1803 high 1803 low
1951 medium 1951 medium
答案 0 :(得分:1)
假设您将文件命名为file1
和file2
并且两者的长度相等,则可以执行以下操作:
unequal <- which(file1$Status != file2$Status)
这将返回行索引号。如果您想拥有CustomerID,您可以:
unequalCustomerID <- file1$CustomerID[unequal]
当然在一个声明中:
file1$CustomerID[which(file1$Status != file2$Status)]
答案 1 :(得分:0)
如果您将文件读入数据框,请说df1和df2。您可以尝试类似df1 [&#39; status&#39;]!= df2 [&#39; status&#39;]
df1 = data.frame(id = c(1,2,3), status = c("low","low","high"))
df2 = data.frame(id = c(1,2,3), status = c("high","low","high"))
df1['status'] != df2['status']
status
[1,] TRUE
[2,] FALSE
[3,] FALSE
答案 2 :(得分:0)
感谢大家的帮助。状态变量的名称略有不同,似乎导致不能在合并上导入。当我的名字相同时,一切顺利。