使用readxl时出错:' exdir'不存在

时间:2016-09-14 16:45:24

标签: r excel import readxl

我正在尝试使用readxl :: read_excel将excel电子表格(.xlsx和.xls)中的表格数据导入R.我在从桌面阅读电子表格时已成功使用此功能,但我无法从中阅读我的Documents文件夹现在。

我尝试读取同一文件的.xlsx和.xls格式,并获得了2条不同的错误消息。

# Check the working directory
[1] "\\\\isdowfsv04/D100Home/e525902"

# Read .xlsx
specs <- read_excel("Class Specs Sept 2016.xlsx")

Error: 'exdir' does not exist

# Read .xls
specs <- read_excel("Class Specs Sept 2016.xls")

Error: path[1]="\\isdowfsv04/D100Home/e525902/Class Specs Sept 2016.xls": Access is denied

第二条消息让我觉得我没有权限在这里读/写数据,但我一直在这里创建文件夹/文件。我甚至使用另一个R库,readr包,从同一目录导入.csv文件。

# Using readr to import .csv version of the file works fine.
specs <- read_csv("\\\\isdowfsv04/D100Home/e525902/Class Specs Sept 2016.csv")

根据我见过的其他帖子,这似乎是一个许可问题,但我不清楚如何修复它。

我尝试使用Sys.setenv()将临时文件夹位置更改为我知道我有权写入的地方(即桌面),因为我认为readxl在读取数据时使用了这些路径。但这并没有奏效,因为我得到了完全相同的错误信息。

Sys.getenv(c("TEMP", "TMP"))
                                      TEMP                                        TMP 
"C:\\Users\\e525902\\AppData\\Local\\Temp"     "C:\\Users\\e525902\\AppData\\Local\\Temp"

# Change temp file paths to the Desktop
Sys.setenv(TEMP = "C:\\Users\\e525902\\Desktop")
Sys.setenv(TMP = "C:\\Users\\e525902\\Desktop")

我正在使用PC工作,而Documents文件夹实际上是一个网络驱动器。我使用read_excel从其他网络文件夹导入.xlsx文件,但是这个文件给我带来了麻烦。以下是有关我使用的系统的更多信息。

Sys.info()
sysname                      release                      version 
               "Windows"                      "7 x64" "build 7601, Service Pack 1" 
                nodename                      machine                        login 
           "10004053WDT"                     "x86-64"                    "e525902" 
                    user               effective_user 
               "e525902"                    "e525902"

search()
 [1] ".GlobalEnv"        "package:readr"     "package:readxl"    "tools:rstudio"     "package:stats"    
 [6] "package:graphics"  "package:grDevices" "package:utils"     "package:datasets"  "package:methods"  
[11] "Autoloads"         "package:base"

# R version
version$version.string
version.string R version 3.2.5 (2016-04-14)

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。当我将工作目录设置为excel文件的基本位置,然后在read excel中,使用相对路径到达目录时,我发生了这种情况。

一旦我重新启动R,并将我的工作目录保留为默认值,然后在read_excel函数中使用完整文件路径,我的exdir错误就消失了。

如果这对您有用,请告诉我。我还在使用Windows 7 64位系统的网络驱动器上工作。