Hi Alex, lapply is not a substitute for for, so it not only does things differenly, it does a different thing.
> Shadowlist<-array(data=NA,dim=c(dimx,dimy,dimmaps)) > for (i in c(1:dimx)){ > Shadowlist[,,i]<-i > } Note that your test case is not reproducible as you haven't defined dimx, dimy, dimmaps. > returni <-function(i,ShadowMatrix) {ShadowMatrix<-i} > lapply(seq(1:dimx),Shadowlist[,,seq(1:dimx)],returni) > So far I do not get same results with both ways. > Could you please help me understand what might be wrong? I don't suppose you're getting any results with lapply this way at all. 1. The second argument to lapply should be a function but here you have something else. 2. Lapply returns a list of results and does *not* modify its arguments. If you really want to, you can use <<- within lapply, so your example (slightly modified) could look something like this: A<-B<- array(data=NA,dim=c(5,5,5)) for (i in c(1:5))A[,,i]<-i lapply(1:5, function(i) B[,,i][]<<-i) all.equal(A,B) Notice that in this case, what lapply returns is not identical to what it does to B, and this is not nice. The normal use of lapply is applying a function to each element of a list (or a vector)... C<- lapply(1:5, diag) # a list with 5 elements, matrices with increasing size lapply(C, dim) # dimensions of each matrix # sapply would give it in a more convenient form # or you could print it more concisely as str(lapply(C, dim)) the equivalent with for would be: for(i in 1:5) print(dim(C[[i]])) The _for_ version is less short and there are much more ['s and ('s to take care about so lapply/sapply is easier here. Notice also that it creates a new variable (i) or potentially overwrites anything named i in your workspace. Lapply doesn't do it unless you explicitly tell it to (using things like <<- , not recommended). Good luck, Kenn ______________________________________________ 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.