2015-06-03 88 views
2

我有文件夾「測試AIS Florent/test division/division2014/testexport/testloop」,其中包含4個csv文件:testexport_1; testexport_2; testexport_3和testexport_4。從目錄中的csv列表創建文件

我想過濾的每個文件,並將其導出爲CSV不同:一個testexport_1,第二個用於testexport_2等

現在,我的劇本是

rm(list = ls()) 
setwd("D:/TEST AIS Florent/test division/division2014/testexport/testloop") 
fileList <- list.files(pattern="testexport_.*\\.csv", recursive=TRUE) 
#lenghtlist<-as.numeric(length(fileList)) 

for (file in fileList) { 

data2014<-read.table(file, header=F, fill=T, quote="\"", na.strings=c(""," ", "null", "NA"), sep=",") 

#########filtering the data here 

write.csv(data2014, file = "data.csv",sep = ";", quote= F, col.names=T, row.names=F) 
} 

的問題是當我在工作目錄中寫入csv時,R僅創建一個輸出文件data.csv,並且正在寫入該文件。

我想有 爲testexport_1 - >輸出_1 和testexport_2 - >輸出_2, 等

謝謝!

回答

4

通過用「data」替換字符串的主要部分,即時構建文件字符串。

... 
write.csv(data2014, file = gsub("testexport", "data", file),sep = ";", quote= F, col.names=T, row.names=F) 
... 
+0

完美,謝謝! – Floni