如何将长度相同的列表合并为一个列表?

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个或更多。
1个回答

6

这个应该能解决问题。而且,mapply()可以接受任意数量的列表作为参数。

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

mapply(list, xx, yy, zz, SIMPLIFY=FALSE)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接