On 26-09-2012, at 09:59, Loukia Spineli <spinelilouki...@gmail.com> wrote:
> Dear all, > > I am trying to construct 25x31 different matrices of 2x2 dimension. Here > is the problem: > > we have the following matrix > matrix(c(54+s0, > 43+s1, 56-s0, 67-s1), nrow=2, ncol=2, byrow=T) > > the values for s0 and s1 are c(0:24) and c(0:31), respectively. > > I wrote the following code without the desired results > > x<-0:24 > y<-0:30 > > results<-array(matrix(0,nrow=2,ncol=2,byrow=T),dim=c(2,2,25*31)) > for(i in 1:25){ > for(j in 1:31){ > for(k in > 1:25*31){ > > results[,,k]<-array(matrix(c(54+x[i], 43+y[j], 56-x[i], > 67-y[j]),nrow=2,ncol=2,byrow=T),dim=c(2,2,25*31)) > } > } > } > results > > I am trying to figure out what I am missing. You don't need the third loop for( k in … With for loops you can do this x<-0:3 y<-0:5 mat.start <- matrix(c(54, 43, 56, 67), nrow=2, ncol=2, byrow=T) mat.start Nx <- length(x) Ny <- length(y) results<-array(matrix(0,nrow=2,ncol=2,byrow=T),dim=c(2,2,Nx*Ny)) k <- 1 for(i in 1:Nx){ for(j in 1:Ny){ results[,,k] <- mat.start + matrix(c(x[i], y[j], -x[i],-y[j]),nrow=2,ncol=2,byrow=T) k <- k+1 } } results Berend ______________________________________________ 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.