如何将环境中以_Fields结尾的表格批量传入rbind.fill合并?
解决方法
核心问题是你用grep拿到的是表格名称的字符串,而plyr::rbind.fill需要的是实际的表格对象。按以下步骤修改代码即可:
- 先获取符合条件的表格名称(注意不要额外套
list()):
field_table_names <- grep("_Fields", ls(), value = TRUE)
- 用
mget()通过名称获取对应的表格对象,生成表格列表:
field_tables <- mget(field_table_names)
- 最后用
rbind.fill合并列表里的所有表格:
tmp <- plyr::rbind.fill(field_tables)
额外优化(可选)
如果环境里可能存在同名的非表格对象,可先筛选出数据框类型的对象再合并:
field_tables <- Filter(is.data.frame, mget(field_table_names)) tmp <- plyr::rbind.fill(field_tables)
内容的提问来源于stack exchange,提问作者xtufer
相关产品推荐
相关产品推荐

