[R] An R clause to bind dataframes under certain contions
Henrique Dallazuanna
wwwhsd at gmail.com
Sat Jan 26 22:14:10 CET 2008
On 26/01/2008, David Winsemius <dwinsemius at comcast.net> wrote:
> "Henrique Dallazuanna" <wwwhsd at gmail.com> wrote in
> news:da79af330801261222u51bbe74m3109625b77cd2b77 at mail.gmail.com:
>
> > Try this:
> > merge(x, y, all=T)
>
> That will give <NA>'s in the non-matching rows, which may be what the
> OP wanted. If, on the otherhand, only the rows with matches were
> desired, the usage might be:
In this case omit 'all' argument.
mymerge1 <- merge(mymat, mymat2)
> A.B <- merge(X, Y, by = c("A","B"))
> A.B
>
> mymat<-data.frame(
> x=c(1,1,1,2,2,2,3,3,3),
> y=c(1,2,3,1,2,3,1,2,3),
> z=c(1,2,3,4,5,6,7,8,9))
>
> mymat2<-data.frame(
> x=c(1,1,1,2,2,2,3,3,3),
> y=c(1,2,3,1,2,3,1,4,3),
> zz=c(1,7,3,5,5,6,10,8,20))
>
> mymerge1 <- merge(mymat, mymat2, all=TRUE)
>
> > mymerge1
> x y z zz
> 1 1 1 1 1
> 2 1 2 2 7
> 3 1 3 3 3
> 4 2 1 4 5
> 5 2 2 5 5
> 6 2 3 6 6
> 7 3 1 7 10
> 8 3 2 8 NA
> 9 3 3 9 20
> 10 3 4 NA 8
>
> mymerge2 <- merge(mymat, mymat2, by=c("x","y"))
>
> > mymerge2
> x y z zz
> 1 1 1 1 1
> 2 1 2 2 7
> 3 1 3 3 3
> 4 2 1 4 5
> 5 2 2 5 5
> 6 2 3 6 6
> 7 3 1 7 10
> 8 3 3 9 20
>
>
> --
> David Winsemius
>
> >
> > On 26/01/2008, zhihuali <lzhtom at hotmail.com> wrote:
> >>
> >> Hi netters,
> >> Suppose I have two data frames X and Y. X has three colnames A, B
> >> and C. Y has three colnames A,B and D.
> >>
> >> I want to combine them into one matrix, joining the rows having the
> >> same A and B values (X$A==Y$A and X$B = Y$B). So the resulting
> >> dataframe has four variables/columns: A,B,C and D.
> >>
> >> I was wondering what's the best way to do it in R. Could anyone
> >> give me some advice?
> >>
> >> Thanks!
> >>
> >> Zhihua Li
>
> ______________________________________________
> R-help at 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.
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
More information about the R-help
mailing list