打开Excel文件并在R中保存为CSV

时间:2015-02-19 19:44:52

标签: r

我正在使用以下代码:

setwd("~/R/Test")
require(openxlsx)
file_list <- list.files(getwd())

for (file in file_list){
  file = read.xlsx(file)
  write.csv(file,file=file)
}

在打开目录中的每个文件的位置,读取excel文件,并另存为CSV。但是,我正在尝试获取原始文件名,并使用原始文件名保存CSV。有没有办法做到这一点?

谢谢!

1 个答案:

答案 0 :(得分:1)

正如评论中所指出的,您将覆盖变量file。我还建议更改文件的扩展名。试试这个作为你的for循环:

for (file in file_list) {
  file.xl <- read.xlsx(file)
  write.csv(file.xl, file = sub("xlsx$", "csv", file))
}

请注意,您需要将"xlsx$"更改为"xls$",具体取决于目录中文件的扩展名。