首页 > 解决方案 > 合并列表并保持相同的结构和名称

问题描述

我有几个列表(ListA、ListB、ListC...),其内部结构与下面的示例相同。我想将所有这些组合在一起,保持它们的结构,并有一个包含所有列表的列表(ListAll)。我怎样才能做到这一点?例子:

我有:

ListA
$ data  :'data.frame':  1 obs. of  2 variables:
  ..$ mean: num -0.128
  ..$ sd    : num 1.11
 $ simulations  :'data.frame':  1000 obs. of  2 variables:
  ..$ mean: num [1:1000] -0.0116 -0.0156 0.0336 -0.0502 -0.0427 ...
  ..$ sd    : num [1:1000] 1.003 1.014 0.963 1.036 1.051 ...
 $ values:'data.frame': 35 obs. of  2 variables:
  ..$ C: num [1:35] 3.45 2.91 2.62 2.06 1.87 ...
  ..$ D: num [1:35] 5.42 2.89 3.34 1.68 1.43 ...
and several lists with the same structure.

我想得到:

ListAll
$ ListA
 $ data  :'data.frame':  1 obs. of  2 variables:
  ..$ mean: num -0.128
  ..$ sd    : num 1.11
 $ simulations  :'data.frame':  1000 obs. of  2 variables:
  ..$ mean: num [1:1000] -0.0116 -0.0156 0.0336 -0.0502 -0.0427 ...
  ..$ sd    : num [1:1000] 1.003 1.014 0.963 1.036 1.051 ...
 $ values:'data.frame': 35 obs. of  2 variables:
  ..$ C: num [1:35] 3.45 2.91 2.62 2.06 1.87 ...
  ..$ D: num [1:35] 5.42 2.89 3.34 1.68 1.43 ...
$ ListB
 $ data  :'data.frame':  1 obs. of  2 variables:
  ..$ mean: num -0.132
  ..$ sd    : num 1.01
 $ simulations  :'data.frame':  1000 obs. of  2 variables:
  ..$ mean: num [1:1000] -0.0114 -0.0123 0.0378 -0.0102 -0.0340 ...
  ..$ sd    : num [1:1000] 1.013 1.011 0.876 1.012 1.023 ...
 $ values:'data.frame': 35 obs. of  2 variables:
  ..$ C: num [1:35] 4.41 1.61 1.42 1.96 2.07 ...
  ..$ D: num [1:35] 2.41 2.19 2.54 2.08 2.53 ...

** 和 names(listAll) 将是:**

ListaA, ListB, ListC...

标签: rlist

解决方案


您可以在基础 R 中创建列表列表。

ListAll <- list(ListA, ListB, ListC)

推荐阅读