通过命令行安装二进制压缩R包

时间:2011-08-16 08:49:15

标签: r windows windows-7 installation package

我正在尝试使用

在Windows 7计算机上通过命令行安装压缩的二进制R包
R CMD INSTALL packagename

但它不起作用。我读到CMD INSTALL不能用于安装二进制包。那么如何通过命令行安装二进制包呢?

3 个答案:

答案 0 :(得分:29)

像我这样无忧无虑的新手的另一种选择是:

 install.packages(file.choose(), repos=NULL)

file.choose()命令将显示一个窗口,允许您选择.zip文件或下载它的tar.gz文件。 当您在Windows计算机上没有足够的权限并从像我这样的闪存驱动器运行R时,此命令非常有用。

在运行此命令之前,将要安装的zip文件重命名为您要使用的包名称也很有用。

答案 1 :(得分:27)

您可以使用Rscript前端来运行代码,就好像它在正在运行的R会话中一样。假设您要安装的软件包在当前工作目录中为foo.zip。我可能在这里滥用Rscript,但它对我有用:

Rscript -e "install.packages('foo.zip', repos = NULL)"

如果二进制包不在运行脚本的目录中,则需要提供该路径。 repos = NULL是让install.packages()从本地文件中工作的技巧。阅读?install.packages以获取有关您可能要指定的其他参数的更多信息,尤其是lib。请注意,在执行此操作时,您无法从自动依赖项解析中受益 - 您需要repo,如果您提供了一个,R将尝试下载软件包。

你是对的R CMD INSTALL; R安装和管理手册在Section 6.3中有以下内容:

  

在类似Unix的用途中从源代码安装软件包

    R CMD INSTALL -l /path/to/library pkg1 pkg2 ...

答案 2 :(得分:4)

@ moldovean答案的补充: 我曾经保存过压缩文件(从temp复制到R下载文件夹以备将来参考)。 当我将R从2.15.1更新到3.0.1时,我运行这些命令以便于安装:

setwd("C:/Downloads/R Packages");
packages<-dir();
install.packages(x, repos=NULL) #where x is the name of package

并且R自动从压缩文件安装所有包。现在我只能用一个命令更新所有这些(google it)