[R] Comparing data frames and keeping non-matches
Pele
drdionc at yahoo.com
Wed Mar 11 18:37:36 CET 2009
Hi R users,
I am trying to compare 2 data frames by subject and match and save the no
matches to an object called nomatch, but I am getting unexpected results...
Can anyone tell me how to correct the code to get the expected results shown
in the last table?
Many thanks in advance for your any help!
library("reshape")
year <- c(2100:2110)
x1 <- c(F,T,T,F,F,F,T,F,T,T,F)
df1 <- data.frame(cbind(year, x1))
df1$subject <- c(1,1,1,2,2,3,3,3,3,4,4)
df1$match <- 1; df1
df2 <- data.frame(cbind(year, x1))
df2$subject <- c(1:11)
df2$match <- 1; df2
key <- c("subject", "match")
nomatch <- subset(df2, is.element(df2[,key], df1[,key])==FALSE); nomatch
rm(list=ls())
Unexpected Results
year x1 subject match
1 2100 0 1 1
3 2102 1 3 1
5 2104 0 5 1
7 2106 1 7 1
9 2108 1 9 1
11 2110 0 11 1
Results I expected
year x1 subject match
5 2104 0 5 1
6 2105 0 6 1
7 2106 1 7 1
8 2107 0 8 1
9 2108 1 9 1
10 2109 1 10 1
11 2110 0 11 1
--
View this message in context: http://www.nabble.com/Comparing-data-frames-and-keeping-non-matches-tp22460451p22460451.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list