【问题标题】:How to combine multiple dataframes with serial numbers in R [duplicate]如何在R中将多个数据帧与序列号结合起来[重复]
【发布时间】:2021-02-07 00:57:01
【问题描述】:

我有一系列从程序生成的编号数据集,例如data1data2、...、data100。它们具有相同的列名,我可以使用rbind(data1, data2, ...,data100) 将它们组合成一个数据集。有没有更有效的方法来做到这一点而无需循环?

我通过data_names<-paste('data',1:100,sep='') 创建了一个名称向量,但结果是一个字符串向量。 rbind(data_names) 命令不起作用。有没有简单优雅的组合方式?

【问题讨论】:

    标签: r dataframe rbind


    【解决方案1】:

    您可以使用mget获取列表中的所有数据框,然后使用do.callrbind

    # Create 3 data frames in the work space as an example
    set.seed(1)
    
    data1 <- data.frame(a = runif(2), b = runif(2))
    data2 <- data.frame(a = runif(2), b = runif(2))
    data3 <- data.frame(a = runif(2), b = runif(2))
    
    # Create the names of the data frame
    data_names <- paste0("data", 1:3)
    
    # Get the data frames baed on data_names as a list
    data_list <- mget(data_names)
    
    # Combine all data frames using do.call and rbind
    data_all <- do.call("rbind", data_list)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-14
      • 2021-08-21
      • 1970-01-01
      • 2019-11-18
      • 1970-01-01
      • 2015-06-18
      • 2020-06-13
      • 1970-01-01
      相关资源
      最近更新 更多