try something like this:

n <- 23
x <- array(1:20, dim = c(n, 6))
huge.list <- rep(list(x), 1000)

out <- lapply(1:4, function (i) {
    t(sapply(huge.list, "[", i = i, j = 1:6))
})

out[[1]]
out[[4]]


I hope it helps.

Best,
Dimitris


On 8/24/2010 11:29 AM, Vladimir Mikryukov wrote:
Dear list members,

I need to create a table from a huge list object,
this list consists of matrices of the same size (but with different
content).

The resulting n tables should contain the same rows from all matrices.

For example:
n<- 23
x<- array(1:20, dim=c(n,6))

huge.list<- list()
for (i in 1:1000) {
     huge.list[[i]]<- x }


# One of 1000 matrices
huge.list[[1]][1:4, 1:6]
      [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    1    4    7   10   13   16
[2,]    2    5    8   11   14   17
[3,]    3    6    9   12   15   18
[4,]    4    7   10   13   16   19
...

# The result should be like that:
# One of n tables (with the row 4 from all 1000 matrices):
      [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    4    7   10   13   16   19
[2,]    4    7   10   13   16   19
[3,]    4    7   10   13   16   19
[4,]    4    7   10   13   16   19
...
[999,]    4    7   10   13   16   19
[1000,]    4    7   10   13   16   19


# I tried to convert a list object to an array
ARR<- array(unlist(huge.list), dim = c(dim(huge.list[[1]]),
length(huge.list)))
# then split it and use abind function, but it didn't work

Thanks in advance!
Vladimir

--
Vladimir Mikryukov
PhD student
  Institute of Plant&  Animal Ecology UD RAS,
Lab. of Population and Community Ecotoxicology
[8 Marta 202, 620144, Ekaterinburg, Russia]
Tel.  +7 343 210 38 58 (ext.290)
Fax: +7 343 260 82 56, +7 343 260 65 00

        [[alternative HTML version deleted]]

______________________________________________
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.


--
Dimitris Rizopoulos
Assistant Professor
Department of Biostatistics
Erasmus University Medical Center

Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands
Tel: +31/(0)10/7043478
Fax: +31/(0)10/7043014

______________________________________________
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.

Reply via email to