gpt4 book ai didi

r - 如何合并具有相同列名的列表以获得它们的联合

转载 作者:行者123 更新时间:2023-12-04 06:15:18 24 4
gpt4 key购买 nike

假设我有 N 个列表,它们都具有相同的列名。我想合并这些,以便我得到一个具有相同列的结果列表,但现在包含所有 N 列表中的条目。这是一个显示我想要的 MWE:

  ls<-list()
ls[[1]]<-list("a"=1,
"b"=2)
ls[[2]]<-list("a"=3,
"b"=4)

#how to write a one-liner that produces lsTotal, which is the union of ls[[1]] and ls[[2]]?

lsTotal<-list("a"=c(1,3),
"b"=c(2,4))

我找到了这个 thread ,从中我可以使用 Map(c, ls[[1]], ls[[2]]) .但是,如果 ls 写出来很乏味很长。有捷径吗?

最佳答案

一种选择是 tidyverse

library(purrr)
library(dplyr)
transpose(ls) %>%
map(unlist)

或使用 Mapdo.call
do.call(Map, c(f=c, ls))
#$a
#[1] 1 3

#$b
#[1] 2 4

关于r - 如何合并具有相同列名的列表以获得它们的联合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47179291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com