如何在r中一次读取多个.xls文件

时间:2017-03-23 08:04:54

标签: fread

多次尝试下面的代码,但是当我运行下面的代码时没有任何反应。我认为fread不会读取.xls格式。因此,我尝试了另外两个不同的代码,一个是Rio软件包,另一个是openxlsx软件包。对不起,我是新来的。共有38个文件,每个文件都有名称" Cust + Txn + Details + Customer(36).xls"。谢谢。

## First put all file names into a list 
library(data.table)
files <- list.files(path = "F:\\MUMuniv\\machine learning class\\
                        price sensitivty\\PS works\\Customer files", 
                        pattern = ".xls", full.names = T)


readdata <- function(fn){
  dt_temp <- fread(fn)
  return(dt_temp)
}

# then using 

all.files <- lapply(files, readdata)
final.data <- rbindlist(all.files)


Error I got:  " Error in fread(fn) : mmap'd region has EOF at the end "




#Example 2
#rio package

require("rio")
xls <- dir(path = ".", all.files = T)
created <- mapply(convert, xls, gsub(".xlsx", ".csv", "xls"))


unlink(xls)

Error in get_ext(file) : 'file' has no extension

#example 3
# using openxlsx package

require("openxlsx")

# Create a vector of Excel files to read
files.to.read = list.files(path = ".", all.files = T)

# Read each file and write it to csv
lapply(files.to.read, function(f) {
  df = read.xlsx(f, sheet=1)
  write.csv(df, gsub("xlsx", "csv", f), row.names=FALSE)
})


 Error in file(con, "r") : invalid 'description' argument In addition: Warning message:
In unzip(xlsxFile, exdir = xmlDir) : error 1 in extracting from zip file

0 个答案:

没有答案