I'm trying to compare two dataframes with the exact same amount of rows and variables, for changes in variable value per unique ID (returning True if the value is the same, and false if it is different). Here's an example of how the data looks:
df1
id col1 col2
1 abc 123
2 def 456
3 ghi 789
df2
col1 id col2
ghe 3 789
abc 1 123
def 2 455
And I guess I would have the result of the comparison be in df3
id col1 col2
1 true true
2 true false
3 false true
Any help would be greatly appreciated! Hopefully I've made this somewhat clear.
Try this:
cbind.data.frame(id=df1$id, df1[-1]==df2[match(df1$id, df2$id), names(df1)[-1]])
# id col1 col2
#1 1 TRUE TRUE
#2 2 TRUE FALSE
#3 3 FALSE TRUE
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments