错误:尝试write.xlsx时,压缩工作簿失败

use*_*649 20 excel r

我试图写一个xlsx文件,write.xlsx我得到这个错误:

Error: zipping up workbook failed. Please make sure Rtools is installed or a zip application is available to R.
     Try installr::install.rtools() on Windows.

package ‘Rtools’ is not available (for R version 3.1.2) 
Run Code Online (Sandbox Code Playgroud)

我现在应该怎么做才能解决这个问题?

编辑: 我安装Rtools:

>installr::install.rtools()

No need to install Rtools - You've got the relevant version of Rtools installed
Run Code Online (Sandbox Code Playgroud)

但是之后我还是得到了那个错误 write.xlsx

小智 35

你应该检查R_ZIPCMD系统变量:

Sys.getenv("R_ZIPCMD", "zip")   
Run Code Online (Sandbox Code Playgroud)

默认值:"zip".但是你必须设置环境变量.如果您确切知道该位置,可以进行设置:

Sys.setenv(R_ZIPCMD= "C:/SOMETHING_PATH/Rtools/bin/zip")   
Run Code Online (Sandbox Code Playgroud)

我有同样的问题,但设置R_ZIPCMD解决了它.

  • 有没有办法永久地这样做?每次在新会话中运行新脚本时都必须这样做很烦人. (6认同)
  • 对于'永久'解决方案,在你的.Rprofile中插入:`if(devtools :: find_rtools())Sys.setenv(R_ZIPCMD = file.path(devtools ::: get_rtools_path(),"zip"))`.[这个答案](http://stackoverflow.com/a/39901895/1519199)有更多关于.Rprofie不完美的原因,以及`?startup` (2认同)

小智 9

从这个位置安装Rtools(用于Windows)http://cran.r-project.org/bin/windows/Rtools/ 下载与当前版本的R兼容的版本.安装时选中用于更改路径变量的框或添加"C:\ Rtools\BIN; C:\ Rtools\GCC-4.6.3\BIN;" 之后路径变量.开始新的R会话...这对我有用..希望这有助于..

  • 很好的答案.它可能有助于澄清一点:在Win 7中,转到控制面板>系统>高级系统设置>环境变量...然后在系统变量下,找到路径,编辑...添加到结尾"; C:\ Rtools\bin; C:\ Rtools\gcc-4.6.3\bin"重启RStudio然后去. (4认同)

小智 5

在 write.xlsx 之前尝试:

detach(package:openxlsx)

library(xlsx)
Run Code Online (Sandbox Code Playgroud)