On Mon, Feb 2, 2009 at 4:05 PM, Petr PIKAL <petr.pi...@precheza.cz> wrote: > Hi > > r-help-boun...@r-project.org napsal dne 02.02.2009 16:52:06: > >> >> Hi, >> >> I have a very basic question on merging two matrices by alternating the >> rows. For illustration, assume two matrices - >> >> A looks like: >> >> 10 10 >> 10 10 >> >> B looks like: >> >> 20 20 >> 20 20 >> >> How do I combine them such that I get alternating rows from A and B? My >> final result should be C which looks like: >> >> 10 10 >> 20 20 >> 10 10 >> 20 20 > > I would rbind both matrices and then indexed the resulting matrix. > > x<-rep(10,4) > y<-rep(20,4) > dim(x)<-c(2,2) > dim(y)<-c(2,2) > z<-rbind(x,y) >> z > [,1] [,2] > [1,] 10 10 > [2,] 10 10 > [3,] 20 20 > [4,] 20 20 > > ind<-c(seq(1,4,2), seq(2,4,2)) > z[ind,] > >> z[ind,] > [,1] [,2] > [1,] 10 10 > [2,] 20 20 > [3,] 10 10 > [4,] 20 20 >
Another solution: m1 <- matrix(10,4,2) m2 <- matrix(20,2,2) m1[seq(2,4,2),] <- m2 Paul ______________________________________________ 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.