I have a function that returns an array with four columns but the number of rows differs with the calling argument. I want to use something like sapply() to rbind() the outputs together.
Following toy example illustrates my problem:
f <- function(i) { options(warn= -1) r <- ceiling(sqrt(i)) return(matrix(1:3,r,4)) }
Thus sapply(1:5,f) is a list with five elements.
R> (a <- sapply(1:5,f)) [[1]] [,1] [,2] [,3] [,4] [1,] 1 2 3 1
#{...DELETED...}
[[5]] [,1] [,2] [,3] [,4] [1,] 1 1 1 1 [2,] 2 2 2 2 [3,] 3 3 3 3
R>
what I want is the equivalent of
R> rbind(a[[1]],a[[2]],a[[3]],a[[4]],a[[5]])
but with an arbitrary upper limit and without any loops. Anyone?
Obligatory attempt: R> string<-paste("jj<-rbind(a[[1]] ",paste(",a[[",2:5,"]]",collapse=" "),")") R> eval(parse(text=string))
______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help