1. 程式人生 > >R語言-基礎操作(批量資料讀取和輸出)

R語言-基礎操作(批量資料讀取和輸出)

使用R語言時一個常遇到的問題,就是檔案的批量讀取和對結果的批量輸出。

批量讀取

批量讀取資料,有兩種形式,讀取一個目錄下的所有檔案,從資料庫中讀取多個表。

##讀取同一目錄下的所有檔案
path <- "F:/Rfile/OD-B/Data" ##檔案目錄
fileNames <- dir(path)  ##獲取該路徑下的檔名
filePath <- sapply(fileNames, function(x){ 
                 paste(path,x,sep='/')})   ##生成讀取檔案路徑
data <- lapply(filePath, function
(x){ read.csv(x, header=T)}) ##讀取資料,結果為list ##從資料庫中讀取資料類似上面,獲取要資料庫裡的檔名,寫個正則篩選檔名後for迴圈讀取。

批量輸出

對結果批量輸出csv檔案,其中data為list格式

outPath <- "F:/Rfile/OD-B/Consequence" ##輸出路徑
out_fileName <- sapply(names(data),function(x){
                    paste(x, ".csv", sep='')}) ##csv格式
out_filePath  <- sapply(out_fileName, function
(x){ paste(outPath ,x,sep='/')}) ##輸出路徑名 ##輸出檔案 for(i in 1:length(data)){ write.csv(data[[i]], file=out_filePath[i], row.name=F) }