列表中的自定义数据 Set/Frame

Custom Data Set/Frame From List

样本

A=data.frame("id"=c(1:10))
B=data.frame("id"=c(7:16))
C=data.frame("id"=c(-10:-1))

mylist=c(A,B,C)

我想要的是一个将这三个 data.frames 组合成一个的列表:

WANT = data.frame("id"=c(1:10,7:16,-10:-1),
                  dataID=c(rep("A",10),rep("B",10),rep("C",10)))

如果假设我有 list,其中包含一堆数据帧(这就是我获得数据的方式)。我想将它们放入一个非常大的数据 frame/set 中,例如 "WANT",它使用列表中数据集的名称作为 dataID。我可以用几个例如 A、B、C 来做到这一点,但我有大约一百个,我想知道如何提取列表中的数据帧并制作一个像 "WANT" 示例那样的高文件。

您可以将 dataID 添加到单个数据帧中,然后将它们绑定在一起:

编辑:经过一番澄清,这是一种新方法 listNAMES = 字母[1:3]

    library(tidyverse)
    tibble(mydata = list(A, B, C),
           dataID = listNAMES) %>% 
      unnest()
    # A tibble: 30 x 2
   names    id
   <chr> <int>
 1     1     1
 2     1     2
 3     1     3
 4     1     4
 5     1     5
 6     1     6
 7     1     7
 8     1     8
 9     1     9
10     1    10
# ... with 20 more rows