【问题标题】:Reading a file on a network in R在 R 中读取网络上的文件
【发布时间】:2016-09-02 15:58:30
【问题描述】:

我正在使用 read.csv 方法将 csv 文件导入到 R 中,但出现以下错误。

The network path is "\\shared\data\abc.csv"

read.csv("\\shared/data/abc.csv",header=T)
                    or 
read.csv("\\shared\\data\\abc.csv",header=T)

如果我在文件资源管理器的地址栏中使用复制粘贴地址,它会打开文件,但 R 不知何故无法读取它。什么原因?是不是因为网络名称以 "//" 开头,而不是像 C,D 等传统驱动器名称?

【问题讨论】:

标签: r path


【解决方案1】:

您需要转义每个反斜杠,因此对于双反斜杠,您需要四个反斜杠,即

read.csv("\\\\shared\\data\\abc.csv",header=T)

【讨论】:

    【解决方案2】:

    此外,以下内容也适用,并且应该与操作系统无关:

    read.csv("//shared/data/abc.csv",header=T)
    

    在运行 getwd() 时,请注意文件夹之间的分隔符是正斜杠 (/),就像在 LinuxMac 系统上一样。 如果您使用 Windows 操作系统,正斜杠会看起来很奇怪,因为您熟悉 Windows 文件夹的反斜杠 (\)。在Windows 中工作时,您需要使用正斜杠或使用双反斜杠 (\\) 转义反斜杠。

    【讨论】:

      【解决方案3】:

      使用 R 的内置文件系统函数:

      CSVfile <- file.path('\\\\shared', 'data', 'abc.csv')
      read.csv(CSVfile, header=T)`
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-31
        • 1970-01-01
        • 1970-01-01
        • 2014-12-24
        相关资源
        最近更新 更多