使用readxl时出错:“exdir”不存在

我正在尝试使用readxl :: read_excel从Excel电子表格(.xlsx和.xls)中将表格数据导入到R中。从桌面读取电子表格时,我已经成功使用此function,但是我无法从“我的文档”文件夹现在。

我试着读同一个文件的.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 

第二条消息让我觉得我没有读/写数据的权限,但是我一直在这里创build文件夹/文件。 我甚至使用另一个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") 

根据我见过的其他post,这似乎是一个许可问题,但我不清楚如何解决它。

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

 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文件夹实际上是一个networking驱动器。 我已经使用read_excel从其他networking文件夹导入.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) 

我遇到了同样的问题。 当我将我的工作目录设置为excel文件的基本位置时,发生在我身上,然后在读取excel中,使用相对path到达目录。

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

让我知道这是否适合你。 我也在使用Windows 7 64位系统的networking驱动器上工作。