【问题标题】:Reading multiple files from directory in R从R中的目录读取多个文件
【发布时间】:2016-04-11 17:10:19
【问题描述】:

我在一个目录中有一系列 csv 文件。

我试过了:

fileslist <- list.files(path="/Users/joker/csv_test/", pattern=".csv")
sapply(fileslist, read.csv)

但是,我收到以下错误:

Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") :
  cannot open file '11NORTHBOUND.csv': No such file or directory

如您所见,它正在正确读取文件名 (11NORTHBOUND.csv)。出现此错误的可能原因是什么?

【问题讨论】:

    标签: r


    【解决方案1】:

    您的 sapply 行中的文件路径不正确,因为您的路径未包含在文件名向量中。 files.list() 有一个选项 full.names,默认为 FALSE。如果您使用 full.names=TRUE (这样“目录路径被添加到文件名之前,以提供相对文件路径”),代码将起作用。

    fileslist <- list.files(path="/Users/joker/csv_test/", pattern=".csv", full.names=TRUE)
    sapply(fileslist, read.csv)
    

    【讨论】:

      【解决方案2】:

      您与文件不在同一目录中。使用getwd() 进行验证。以下可能会起作用:

      fileslist <- list.files(path="/Users/joker/csv_test/", pattern=".csv")
      MyFileList <- lapply(fileslist, function(i) read.csv(paste0("/Users/joker/csv_test/", i))
      

      要预先测试,请使用

      testFile <- read.csv(paste0("/Users/joker/csv_test/", fileslist[1]))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-23
        • 1970-01-01
        • 2020-12-02
        • 1970-01-01
        相关资源
        最近更新 更多