我有一个约500个csv文件的列表,每个文件的文件名由一个六位数字后跟一年(例如123456_2015.csv)组成。我想将具有相同六位数字的所有文件附加在一起。我试图实现在这个问题中建议的代码: Import and rbind multiple csv files with common name in R但我希望将附加数据作为新的csv文件保存在与当前保存的原始文件相同的目录中。我也尝试实现下面的代码,但是由此产生的csv文件不包含数据。将csv文件与通用文件标识符结合使用
rm(list=ls())
filenames <- list.files(path = "C:/Users/smithma/Desktop/PM25_test")
NAPS_ID <- gsub('.+?\\([0-9]{5,6}?)\\_.+?$', '\\1', filenames)
Unique_NAPS_ID <- unique(NAPS_ID)
n <- length(Unique_NAPS_ID)
for(j in 1:n){
curr_NAPS_ID <- as.character(Unique_NAPS_ID[j])
NAPS_ID_pattern <- paste(".+?\\_(", curr_NAPS_ID,"+?)\\_.+?$", sep = "")
NAPS_filenames <- list.files(path = "C:/Users/smithma/Desktop/PM25_test", pattern = NAPS_ID_pattern)
write.csv(do.call("rbind", lapply(NAPS_filenames, read.csv, header = TRUE)),file = paste("C:/Users/smithma/Desktop/PM25_test/MERGED", "MERGED_", Unique_NAPS_ID[j], ".csv", sep = ""), row.names=FALSE)
}
任何帮助将不胜感激。
谢谢,工作出色!伟大的建议 – MaddieS