【问题标题】:How to read multiple .xls files in r?如何在 r 中读取多个 .xls 文件?
【发布时间】:2017-06-07 20:27:33
【问题描述】:

我有 18 个文件 (.xls) 在列表中,我想一口气阅读它们

下面是我的代码:

filenames=list.files("C:/Users/ozgur.alptekin/Downloads/elif")

df.list=lapply(filenames, function(x) read_excel(file = x,sheetIndex = 1,as.data.frame = TRUE,header = TRUE))

没用

你能告诉我我做错了什么以及我应该怎么做吗?

【问题讨论】:

  • 怎么没用?有错误吗?
  • @Adam Spannbauer 错误提示:Error in read_excel(file = x, sheetIndex = 1, as.data.frame = TRUE, header = TRUE) : unused arguments (file = x, sheetIndex = 1, as.data.frame = TRUE, header = TRUE)
  • ?read_excel你使用的参数不是记录在案的参数

标签: r lapply readxl


【解决方案1】:

您可以使用相同的代码并进行一些更改。 read_excel下:

  1. 使用工作表而不是工作表索引
  2. 删除“file=”并仅提及 x
  3. 不要认为 as.data.frame 在 read_excel 中有效

那么,

filenames=list.files("C:/Users/ozgur.alptekin/Downloads/elif")    
df.list=lapply(filenames, function(x) read_excel(x,sheet = 1,header = TRUE))

然后要将其转换为data.frame格式,请使用以下

将所有不同的数据附加到一个主数据中

master_file = as.data.frame(do.call(rbind,df.list))

【讨论】:

    【解决方案2】:

    你能简单地尝试一个循环吗?

    filenames=list.files("C:/Users/ozgur.alptekin/Downloads/elif")
    
    for (i in 1:length(filenames) {
    assign(paste0("file_", i), 
    read_excel(file = filenames[i],sheetIndex = 1, as.data.frame = TRUE, header = TRUE), envir = .GlobalEnv)
    }
    

    如果有效,请回复。

    【讨论】:

    • 您在第 2 行缺少一个右括号。我使用 sheet=2, range="A8:R45" 并删除了 sheetIndex 和 as.data.frame 参数,因为它们没有在read_excel 使用说明。但是,我仍然收到错误消息:“for (i in 1:length(files.list)...”中出现意外{ 有什么建议吗?
    猜你喜欢
    • 1970-01-01
    • 2018-11-27
    • 2019-06-04
    • 2023-02-09
    • 2017-10-18
    • 2018-10-04
    • 1970-01-01
    • 2019-07-02
    • 1970-01-01
    相关资源
    最近更新 更多