On Thu, Jul 29, 2010 at 6:53 AM, pdb <ph...@philbrierley.com> wrote: > > I have 2 data frames (A & B) with some common column names. > > A has 10 rows. > B has 20 rows. > > How do I combine them so I end up with a data frame with 30 rows that only > contains the common columns. > > I was trying 'merge' (Merge two data frames by common columns .....etc. ) > but that is not giving me what I expect... > >> a <- iris >> b <- iris >> >> c <-merge(a,b) >> >> NROW(a) > [1] 150 >> NROW(c) > [1] 152 > > Why is there only 152 rows and not 300? >
Because rows 102 and 143 are the same: > iris[c(102, 143),] Sepal.Length Sepal.Width Petal.Length Petal.Width Species 102 5.8 2.7 5.1 1.9 virginica 143 5.8 2.7 5.1 1.9 virginica so row 102 gets joined to both 102 and 143 and row 143 gets joined to both 102 and 143 and all other rows get joined to themselves giving 2 + 2 + 148 = 152 rows. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.