【发布时间】:2020-04-27 18:09:35
【问题描述】:
所以我的数据目前在 R 中被分成 211 个数据帧,我想知道是否有一种方法可以将所有这些数据组合在一起,而不必输入每个数据帧的名称。每个数据帧都以类似的方式命名:以“dma”开头,然后具有它对应的 dma 编号 (dma1-dma211)。是否有组合/合并功能允许我选择所有以“dma”开头的数据帧并将它们组合起来?所有数据框都具有相同的列和列名,我想将它们垂直组合。谢谢!!
【问题讨论】:
所以我的数据目前在 R 中被分成 211 个数据帧,我想知道是否有一种方法可以将所有这些数据组合在一起,而不必输入每个数据帧的名称。每个数据帧都以类似的方式命名:以“dma”开头,然后具有它对应的 dma 编号 (dma1-dma211)。是否有组合/合并功能允许我选择所有以“dma”开头的数据帧并将它们组合起来?所有数据框都具有相同的列和列名,我想将它们垂直组合。谢谢!!
【问题讨论】:
我们可以使用mget 来获取以“dma”开头的对象的值,后跟数字到list,然后rbind 和do.call 在base R 中
out <- do.call(rbind, mget(ls(patterns = '^dma\\d+$')))
或者tidyverse
library(dplyr)
out <- mget(ls(patterns = '^dma\\d+$')) %>%
bind_rows
【讨论】: