我正在尝试使用
在Windows 7计算机上通过命令行安装压缩的二进制R包R CMD INSTALL packagename
但它不起作用。我读到CMD INSTALL不能用于安装二进制包。那么如何通过命令行安装二进制包呢?
答案 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)