【发布时间】:2020-03-04 11:28:18
【问题描述】:
我想合并两个列表
list_1 <- list(LIST1 = list(list("a"), list("b"), list("c")))
list_2 <- list(LIST2 = list(list("1"), list("2"), list("3")))
期望的输出:
combined_list <- list()
combined_list[[1]] <- c("a", "1")
combined_list[[2]] <- c("b", "2")
combined_list[[3]] <- c("c", "3")
我有一种讨厌的 for 循环方式来执行此操作,但我想使用 purrr 来清理它吗?任何帮助表示赞赏!
【问题讨论】:
-
这个操作通常被称为“zip”,但它似乎从 purrr 中消失了。我以为你可以使用
map2,但直接调用的结果却非常不同。 -
……我之前的评论,我错过了多余的中间
list。所以map2确实 完全按预期工作 - 例如正如在 Calum 的回答中所做的那样,或者相反地通过 first 取消列出和 then 连接:map2(list_1[[1L]], list_2[[1L]], ~ c(unlist(.x), unlist(.y)))