Dear R users,

Let's say I have a list with components being 'm' matrices (as exemplified
in the "mylist" object below). Now, I'd like to subset this list based on an
index vector, which will partition each matrix 'm' in 2 sub-matrices. My
questions are:

1. Is there an elegant way to have the results shown in mylist2 for an
arbitrary number of matrices in mylist?

2. The column names are 'lost' for mylist2[[2]] and mylist2[[4]] (but not
for mylist2[[1]] and mylist2[[3]]). Is there a way to keep the column names
in the results of mylist2?

mylist <- list(matrix(1:9,3,3), matrix(10:18,3,3))
colnames(mylist[[1]])=c('x1','x2','x3')
colnames(mylist[[2]])=c('x4','x5','x6')
index <- list(2)
index[[1]] <- c(TRUE,FALSE,TRUE)
index[[2]] <- c(FALSE,TRUE,TRUE)
mylist2 <- list(as.matrix(mylist[[1]][,index[[1]]]),
                as.matrix(mylist[[1]][,!index[[1]]]),
                as.matrix(mylist[[2]][,index[[2]]]),
                as.matrix(mylist[[2]][,!index[[2]]]))
Thanks for any help,
Lars.

	[[alternative HTML version deleted]]

