gzfile中的错误(文件,“wb”):无法打开连接或压缩文件

时间:2013-03-12 13:51:13

标签: r statistics gzip gz

我正在尝试运行两件事:首先,我使用4x5创建PDF,以dev.off()结束,然后尝试创建新图。然而,在开始第二个情节后,我得到:

Error in gzfile(file, "wb") : cannot open the connection
In addition: Warning message:
In gzfile(file, "wb") :
  cannot open compressed file '/var/folders/n9/pw_dz8d13j3gb2xgqb6rfnz00000gn/T/RtmpTfm1Ur/rs-graphics-822a1c83-b3fd-46c3-8028-4e0778f91d0c/4db4b438-ac35-403b-b791-e781baba152c.snapshot', probable reason 'No such file or directory'
Graphics error: Error in gzfile(file, "wb") : cannot open the connection

这是什么错误?工作目录是我有读/写访问权限的,我的硬盘驱动器未满。

另外,我正在使用RStudio。

19 个答案:

答案 0 :(得分:6)

这让我很生气,所以希望能给别人带来一些辛劳。问题是分类器在OS X上加载得很好,但在Linux部署系统上,它们会因问题中列出的错误而失败。问题是磁盘上的文件扩展名为abc.RData,但代码为modelAbc <- readRDS(file="abc.Rdata")。 Linux上D vs .RData扩展名中大写和小写.Rdata的差异将失败。这不是很明显,但检查你的扩展案例。

答案 1 :(得分:4)

也许你应该看here。最后它说

  

注意:   失败的最常见原因是当前目录中缺少写入权限。对于save.image和在会话结束时保存,这将显示为

之类的消息
Error in gzfile(file, "wb") : unable to open connection
In addition: Warning message:
In gzfile(file, "wb") :
  cannot open compressed file '.RDataTmp',
  probable reason 'Permission denied'

如此迅速,如果您尝试getwd(),请查看您的工作目录集在哪里。如果您尝试将文档保存在不在当前工作目录中的位置,则会引发此错误。

在您的错误消息的末尾,它显示probable reason 'No such file or directory' Graphics error: Error in gzfile(file, "wb") : cannot open the connection 我的诊断只是它试图将你的物品保存在错误的地方并且RStudio无法找到合适的地方。

答案 2 :(得分:3)

这有点晚了但是对于那些来这里寻求帮助的人来说,当我试图从RStudio写一个文件并且我的目标文件路径很长时,我收到了这个错误。我意识到这可能是一个问题,因为当我将文件写入另一个名称较短的位置并尝试将其复制到我的原始目的地时,Windows给了我一个错误说&#34;文件路径太长&#34;。您可能需要将原始文件保存到另一个绝对路径较短的位置。

答案 3 :(得分:2)

您可能无权将文件保存在目录中。 在RStudio上,按getwd()获取您的工作目录。 然后,转到linux中的目录并通过ls -l观察其所有者。 现在,您可以按chown -R username directoryname更改目录的所有者。 但你必须是root。

答案 4 :(得分:1)

我最近遇到了这个问题。尝试关闭您的防病毒软件并构建软件包,这可能会有所帮助。它为我工作。通常,防病毒会阻止权限,您可以通过在构建软件包之前的某个时间禁用它来避免此权限。

答案 5 :(得分:1)

通过指定完整文件路径解决问题:

saveRDS(df,'C:\\users\\matt\\desktop\\code\\df.Rdata')

答案 6 :(得分:0)

在我的情况下,它是Windows Defender阻止Rstudio在硬盘上写任何文件。您需要关闭Controlled Folder Access或在排除列表中添加Rstudio。enter image description here

答案 7 :(得分:0)

我在更改系统区域设置后遇到了这个问题。 使用Sys.getlocale()检查您的语言区域。 使用Sys.setLocale("LC_ALL","ENG")将其更改为适当的一个(将“ENG”替换为适当的一个)

我不能确定哪种语言环境是合适的,但它似乎与默认的操作系统一致。

希望这有帮助!

答案 8 :(得分:0)

错误的原因是您的 用户名是中文 。请在用户目录中创建包含英语的新用户文件夹。例如,您可以将文件夹命名为“DavidSmith”。然后,您需要创建三个文件夹(“AppData”,“Local”,“Temp”)。文件目录 C:\ Users \ DavidSmith \ AppData \ Local \ Temp < / strong>即可。 在高级系统设置中,将修改环境变量TMP和TEMP C:\ Users \ DavidSmith \ AppData \ Local \ Temp 。保存它们。 修改后,打开RStudio并重试。

  

注意:在USER VARIABLE中修改了TMP和TEMP。

答案 9 :(得分:0)

我遇到了同样的问题。对我来说,这是由于安装R studio的驱动器上没有足够的磁盘空间造成的。放空间工作。

答案 10 :(得分:0)

在使用RStudio和R Markdown时,我也遇到了这个问题。我收到此错误消息,并且遇到了令人讨厌的致命错误,这些错误关闭了RStudio。我的问题是我正在使用网络驱动器,或者名称太长(如上述@AHedge中所述),或者我的网络防火墙给我带来了麻烦。目前,我已将工作文件移至桌面,并且一切正常。不确定随着时间的推移这对我的文件管理意味着什么。

答案 11 :(得分:0)

我遇到此错误是因为用于保存文件的文件名中的字符无效,在我的情况下为“ /”(有许多此类字符无法在文件名中使用)。我删除了角色并解决了。

答案 12 :(得分:0)

只是想为博索雷尔(M Beausoleil)提到的内容增加更多的清晰度(根据我的经验)。

使用共享工作目录并尝试重写其他用户编写的工作目录中已经存在的RDS文件时,会出现此错误。

正如某些人已经引用的那样,删除现有RDS文件或更改工作目录是可行的。这不是魔术。之所以起作用,是因为您正在编写一个新的RDS文件,而不是尝试重写旧的RDS文件。

答案 13 :(得分:0)

在我的情况下,尝试在Anaconda提示中退出R并保存工作区图像时,收到错误消息“ gzfile(file,“ wb”)中的错误:无法打开连接”。我正在使用Windows 10和R-3.5.2。要修复它,我必须转到Program Files文件夹,右键单击并选择R文件夹,然后选择Properties。选择“安全性”选项卡,然后在“组或用户名”框中选择“用户”,然后单击“编辑”。在“用户权限”中,我选中了“完全控制”和“修改”并保存了更改。然后,我可以保存工作区图像。

答案 14 :(得分:0)

我有另一个此错误的实例,它似乎是新错误(或者至少没有在此处列出或here:显然,保存名称为switch(typeof(T)) { case // what here? } 的文件不是确定的。我想这是一个保留的文件名。

aux.RData
x <- rnorm(9000)
save(x, file = "aux.RData")

但是当我更改文件名时,保存没有问题:

Error in gzfile(file, "wb") : no se puede abrir la conexión
Also: Warning message:
In gzfile(file, "wb") :
  cannot open compressed file 'aux.RData', probable reason 'No such file or directory'

答案 15 :(得分:0)

在其他答案中没有看到这种情况: 如果这似乎一直在发生,并且在发生时非常持久,请检查文件处理软件连接中的默认目录。
在我的情况下,FileZilla以“ root”身份登录到我的DigitalOcean Droplet上,每当我使用FileZilla创建目录时,它都将写权限设置为“ root”,而在同一Droplet上的RStudio则以“ My_Name”的身份读/写。每当我在FZ中设置某些内容(例如,较大的导入文件,重命名或复制)时,权限都会切换,我会收到此错误。
如果这是导致频繁出现错误消息的原因,则可以使用chown -R My_Name directoryname立即解决该问题,但是从长远来看,如果您要使用文件处理程序来定义和创建许多目录,那么创建该目录将很有用默认名称与您用于RStudio的名称相同的连接。

答案 16 :(得分:0)

就我而言,几个月前第一次发生时,解决方案here有效。

但是最近,它又回来了,而且不断...这次解决的是更换防病毒软件。我不仅拥有Windows Defender,还拥有第二款防病毒软件,两次都相同。我最终卸载了它并安装了另一个防病毒软件……之后,该问题不再发生了……

答案 17 :(得分:0)

我试图将RDS文件保存到本地的Dropbox文件夹中,以便它与我的Dropbox同步。 我发现我遇到了同样的错误,因为我试图创建一个新文件夹,并且看起来saveRDS无法创建一个新文件夹,但是它可以将文件添加到现有文件夹中。因此,我更改了将文件添加到现有文件夹的路径,并且可以正常工作!

答案 18 :(得分:-1)

在我的情况下,此错误是因为我要重写的文件是只读的(出于某种原因,我自己没有这样做)。我只是右键单击文件夹中的文件名,然后取消选中只读属性。之后,它起作用了。