Robin Hankin <[EMAIL PROTECTED]> writes: > Hi again everyone > > I have an arbitrarily dimensional array "a" and a list "jj" of length > length(dim(a)). The elements of jj are vectors of indexes. > > How do I use do.call() to extract a[ jj[[1]], jj[[2]], jj[[3]], ...] ? > > > Toy example follows: > > a <- matrix(1:30,5,6) > jj <- list(5:1,6:1) > > I want the following > > a[ jj[[1]],jj[[2]] ] > > How do I do this? > > > > OBAttempts: > > do.call("[",list(a,jj)) > do.call("[",c(a,jj)) > do.call("[",list(a,unlist(jj))) > > > Of course, the one that works is > > do.call("[",list(a,jj[[1]],jj[[2]])) > > but I don't know how long jj is apriori so this won't do.
do.call("[",c(list(a),jj)) -- O__ ---- Peter Dalgaard Blegdamsvej 3 c/ /'_ --- Dept. of Biostatistics 2200 Cph. N (*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918 ~~~~~~~~~~ - ([EMAIL PROTECTED]) FAX: (+45) 35327907 ______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html