阅读excel:zip文件的评估错误

时间:2017-06-18 21:13:41

标签: r readxl

我正在使用带有readxl包的R.我尝试使用以下命令导入Excel文件:

library(readxl)
city_codes <- read_excel("./data/file.xlsx", sheet = "city_codes")

它说它是一个zip文件,无法打开:

Error in sheets_fun(path) : 
Evaluation error: zip file './data/file.xlsx' cannot be opened.

有什么想法吗?

15 个答案:

答案 0 :(得分:11)

错误消息是readxl有趣的说法&#34;找不到文件&#34;。确切的代码行给了我完全相同的错误,而且文件对我来说甚至都不存在。

注意:我在readxl的1.0.0版

答案 1 :(得分:3)

我遇到了这个错误,但是对我来说,只是我试图将其读入R时在Excel中打开了工作表。我猜想当在Excel中尝试读取它时,程序包错误地将其视为zip文件拥有它的部分所有权(这会阻止读取)。

答案 2 :(得分:1)

您可以指定文件的路径,仅当文件嵌套在工作目录中时。 例如:如果您的工作目录是MyWD,并且其中有一个名为MyData的文件夹,而在MyData中有另一个名为MyNestedData的文件夹,最后是myExcelFile.xlsx

read_excel("MyData/MyNestedData/myExcelFile.xlsx",sheet = "Sheet2") #will work
read_excel("MyWD/MyData/MyNestedData/myExcelFile.xlsx",sheet = "Sheet2") #will not work

答案 3 :(得分:1)

对我来说,当仍在MSExcel中打开excel电子表格时,也会出现“评估错误:zip文件”错误消息。

答案 4 :(得分:0)

如果在使用read_excel函数

之前忘记执行以下操作,可能会发生这种情况
setwd("C:\\map\\map_in_map\\map_in_map_in_map_where_the_file_is")

答案 5 :(得分:0)

您可以尝试指定完整路径,而不是./path/to/file

答案 6 :(得分:0)

如果您的excel工作表受密码保护,则read_excel将无法访问它,并且会出现此错误。 如果需要保护,我建议p / w保护其中的文件夹,然后取消保护工作表。

答案 7 :(得分:0)

如果使用公司的计算机,请尝试更改文件限制。这对我来说解决了这个问题。

答案 8 :(得分:0)

尝试制作一个新文件。点击“另存为”并重新命名。再次运行您的代码。对我来说效果很好:)

答案 9 :(得分:0)

如果使用了错误的读取功能,也可能会收到此错误。

例如,read_xlsx("file.xls" ...)将引发错误。

答案 10 :(得分:0)

虽然已经给出了解决方案,但是出于文档目的,我将把情况留在这里:

我遇到了同样的问题,不知道为什么。看来我的excel文件已关闭,出现错误或类似错误。我必须打开excel文件,然后再次保存。当我运行R时,一切正常。

答案 11 :(得分:0)

问题是我的工作目录中有隐藏文件。我将它们复制到外部并排除所有目录。现在,当我运行代码时,它就可以工作。

答案 12 :(得分:0)

就我而言,xlsx 是使用 Excel 2007 创建的,这导致了此问题。来自较新 Excel 版本的 Xlsx 文件有效。

答案 13 :(得分:0)

就我而言,尽管我已将其删除,但该文件在目录中不可见。我不得不使用名为“Everyting”的软件搜索该文件,然后将其删除。之后就成功了。

答案 14 :(得分:0)

对我来说,我正在将一个文件从 Google Drive 下载到一个扩展名为 .xlsx 的临时文件中...意识到 Google Drive 中的文件是 .xls,所以我将其更改为该文件并且它起作用了。不过这种情况很少见。