组合具有相同结构的列表的列表元素

Tob*_*nne 4 merge r list tidyverse

我有一个包含内部列表的列表,这些列表都具有相同的结构,在我的例子中,它们是字符向量。现在我想要一个通过函数组合这些内部列表的列表(在本例中只是简单c)。一个最小的例子:

list(
  list(one = "a", 
       two = "b", 
       three = "c"), 
  list(one = "d", 
       two = c("e", "f"), 
       three = "g")
  )
Run Code Online (Sandbox Code Playgroud)

我想要的输出:

list(
  one = c("a", "d"),
  two = c("b", "e", "f"),
  three = c("c", "g")
)
Run Code Online (Sandbox Code Playgroud)

我搜索了很长时间,也有类似的问题,但我还没有找到我需要的东西。我还认为类似问题的答案相当复杂。不要误会我的意思,当然,解决这个问题没什么大不了的,但我无法想象没有真正优雅的方法/一个衬垫来解决这个问题。最好有tidyverse语法。

zx8*_*754 5

取消列出 1 级、堆叠和取消堆叠:

unstack(stack(unlist(l, recursive = FALSE)))
# $one
# [1] "a" "d"
# 
# $two
# [1] "b" "e" "f"
# 
# $three
# [1] "c" "g"
Run Code Online (Sandbox Code Playgroud)