合并R中的两个列表并保留列表中的结构

时间:2014-12-11 15:20:25

标签: r list matrix lapply

我在R中有两个包含多个元素的列表。 Eaach元素采用矩阵格式

列表A有10行5列,列表B有5行5列,我想将列表B中的每个元素追加到列表A中。我想在列表的每个元素中保留矩阵结构。新添加的列表将包含15行和5列。基本上我将每个列表中的矩阵附加在一起。

举个例子:

listA <- list(x=matrix(rnorm(50), nrow=10),
              y=matrix(rnorm(50), nrow=10))
listB <- list(x=matrix(rnorm(25), nrow=5),
              y=matrix(rnorm(25), nrow=5))

我在这个网站上尝试了一些解决方案,但是它们都给了vector和doe不保留mXn结构。

k <- mapply(c,listA,listB,simplify=FALSE)

t <- apply(cbind(listA, listB),2,function(x) unname(unlist(x))

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

尝试

 listAB <- Map(`rbind`, listA, listB)
 sapply(listAB, dim)
 #     x  y
 #[1,] 15 15
 #[2,]  5  5