3

假设我有两个列表:

 xx <- as.list(1:3)
 yy <- as.list(LETTERS[1:3])

如何将两者结合起来,使新列表的每个元素都是每个组件列表的相应元素的列表。因此,如果我将上述两者结合起来,我应该得到:

> combined_list
[[1]]
[[1]][[1]]
[1] 1

[[1]][[2]]
[1] "a"


[[2]]
[[2]][[1]]
[1] 2

[[2]][[2]]
[1] "b"


[[3]]
[[3]][[1]]
[1] 3

[[3]][[2]]
[1] "c"

如果您可以提出解决方案,我想将其扩展到 3 或更多。

4

1 回答 1

6

这应该可以解决问题。很好,mapply()将采用任意数量的列表作为参数。

xx <- as.list(1:3)
yy <- as.list(LETTERS[1:3])
zz <- rnorm(3)

mapply(list, xx, yy, zz, SIMPLIFY=FALSE)
于 2012-05-07T19:44:07.717 回答