You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言如何循环遍历MESXX文件夹批量处理csv并导出至指定路径

R遍历多文件夹批量处理CSV解决方案

前置依赖

运行前需先加载所需扩展包:

library(tidyverse)
library(janitor)

完整可运行代码

# 配置路径:root_dir为所有MESXX文件夹所在的上级目录,export_dir为结果输出目录
root_dir <- "/Users/Drive/MS/Ma/Ec/Effort_variation_Ec/"
export_dir <- root_dir

for (i in 1:30) {
  # 生成当前待处理的MES文件夹路径
  current_folder <- file.path(root_dir, paste0("MES", i))
  
  # 读取当前文件夹下所有CSV并合并,和你的原有逻辑完全一致
  ecosmpr <- list.files(path = current_folder, pattern = "*.csv", full.names = TRUE) %>%
    map_df(~read_csv(.x, show_col_types = FALSE)) %>%
    as.data.frame()
  
  # 执行格式化处理
  ecosmpr_processed <- ecosmpr[, -c(2:13)] %>%
    row_to_names(row_number = 1)
  
  # 列重命名
  names(ecosmpr_processed) <- rev(c("detritus","phyto","peri","zoops","amphipods","inverts","leucisids","lns","yct5plus","yct4","yct3","yct2","yctyoy","lkt5plus","lkt34","lkt2","lkt7mo1yo","lktyoy","years"))
  
  # 导出结果,文件名自动匹配对应序号
  export_path <- file.path(export_dir, paste0("ecosmpr", i, "_partialformat.csv"))
  write.csv(ecosmpr_processed, export_path, row.names = FALSE)
}

注意事项

  • 全程使用file.path拼接路径,无需反复切换工作目录,避免路径冲突问题
  • 新增show_col_types = FALSE参数,屏蔽循环过程中冗余的列类型提示输出
  • 若你的MES文件夹命名为双数字后缀(如MES01、MES02而非MES1),将paste0("MES", i)替换为paste0("MES", stringr::str_pad(i, 2, pad = "0"))即可
  • 如果你需要将结果导出到其他路径,直接修改export_dir参数的值即可

内容的提问来源于stack exchange,提问作者vermicellion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 02:42:01