簡體   English   中英

XLConnect-帶有循環對象的readWorksheet

[英]XLConnect - readWorksheet with looping object

我使用帶有XLConnect包的R Studio 3.1.2版來加載,讀取和寫入多個xlsx文件。 我可以通過復制和創建多個對象來做到這一點,但是我試圖使用1個對象(同一文件夾中的所有文件)來做到這一點。 請參閱示例,我可以列出每個文件,但要使用循環來完成

tstA <- loadWorkbook("\\\\FS01\\DEPARTMENTFOLDERS$\\tst\\2015\\Apr\\DeptA.xlsx")
tstB <- loadWorkbook("\\\\FS01\\DEPARTMENTFOLDERS$\\tst\\2015\\Apr\\DeptB.xlsx")

這是即時通訊嘗試這樣做的方式,但出現錯誤

dept <- c("DeptA","DeptB","DeptC")
for(dp in 1:length(dept)){
dept[dp] <- loadWorkbook("\\\\FS01\\DEPARTMENTFOLDERS$\\tst\\2015\\Apr\\",dept[dp],".xlsx")}

之后,我要使用XLConnect的readWorksheet函數。

對於the腳的問題表示歉意,但我正在努力鍛煉如何最好地做到這一點。 謝謝

您可以按照以下步驟通過一次操作將所有文件讀入列表(根據需要調整patternsheet以獲取所需的文件/圖紙):

path = "\\\\FS01\\DEPARTMENTFOLDERS$\\tst\\2015\\Apr\\"

df.list = lapply(list.files(path, pattern="xlsx$"), function(i) {
  readWorksheetFromFile(paste0(path, i), sheet="YourSheetName")
})

如果要將所有數據幀合並為一個數據幀,可以執行以下操作:

df = do.call(rbind, df.list)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM