R合并多个.csv文件,并在另一列中保留源csv文件名 [英] R Combine multiple .csv files and retain source csv file name in an additional column
本文介绍了R合并多个.csv文件,并在另一列中保留源csv文件名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
使用R,我正在将2400个.csv文件编译为一个csv文件.每个要合并的csv文件都有2列和10行.我的问题是将源csv file.csv添加为源参考的第三列.
Using R, I'm compiling 2400 .csv files into a single csv file. Each csv file to be combined has 2 columns and 10 rows. My problem is to add the source csv file.csv as third column for source reference.
例如,我要组合"File1.csv"和"File2.csv"
For Example I want to combine "File1.csv" and "File2.csv"
File1.csv:
Column1 Column2
-6 -9.29E-08
-5.9 -8.71E-08
-5.8 -8.19E-08
-5.7 -7.72E-08
-5.6 -7.25E-08
-5.5 -6.81E-08
-5.4 -6.39E-08
-5.3 -6.01E-08
-5.2 -5.64E-08
-5.1 -5.29E-08
File2.csv :
Column1 Column2
-5 -4.94E-08
-4.9 -4.63E-08
-4.8 -4.33E-08
-4.7 -4.04E-08
-4.6 -3.77E-08
-4.5 -3.50E-08
-4.4 -3.26E-08
-4.3 -3.02E-08
-4.2 -2.79E-08
-4.1 -2.57E-08
预期输出为:
Column1 Column2 Source
-6 -9.29E-08 File1.csv
-5.9 -8.71E-08 File1.csv
-5.8 -8.19E-08 File1.csv
-5.7 -7.72E-08 File1.csv
-5.6 -7.25E-08 File1.csv
-5.5 -6.81E-08 File1.csv
-5.4 -6.39E-08 File1.csv
-5.3 -6.01E-08 File1.csv
-5.2 -5.64E-08 File1.csv
-5.1 -5.29E-08 File1.csv
-5 -4.94E-08 File2.csv
-4.9 -4.63E-08 File2.csv
-4.8 -4.33E-08 File2.csv
-4.7 -4.04E-08 File2.csv
-4.6 -3.77E-08 File2.csv
-4.5 -3.50E-08 File2.csv
-4.4 -3.26E-08 File2.csv
-4.3 -3.02E-08 File2.csv
-4.2 -2.79E-08 File2.csv
-4.1 -2.57E-08 File2.csv
下面是我尝试结合多个csv的代码.
Below is the code i have tried to combine multiple csv.
library(plyr)
library(readr)
mydir <- "D:Combining_CSV_Files/raw data"
setwd(mydir)
myfiles = list.files(path=mydir,pattern="*.csv",full.names=TRUE)
dat_csv = ldply(myfiles,read.csv)
#dat_csv
write.csv(dat_csv,"combined_data.csv",row.names = FALSE)
推荐答案
简单的for
循环有什么用?
what about a simple for
loop?
myfiles <- list.files(path=mydir,pattern="*.csv",full.names=TRUE)
dat_csv <- data.frame()
for(i in myfiles){
dat <- read.csv(paste("./",i,sep=""))
dat$Source <- i
dat_csv <- rbind(dat_csv,dat)
}
write.csv(dat_csv,"combined_data.csv",row.names = FALSE)
这篇关于R合并多个.csv文件,并在另一列中保留源csv文件名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文