ede*_*esz 2 linux ubuntu r command-line-interface
我必须在Ubuntu 16.10系统上执行远程R安装.作为其中的一部分,我必须在该主机上安装特定的软件包.我想安装这些软件包Rcmdr,list,ggplot2,afex,lsmeans.由于我远程这样做,我无法使用
sudo -i R
Run Code Online (Sandbox Code Playgroud)
首先进入R CLI,然后安装install.packages().相反,我必须以某种方式从Ubuntu CLI安装软件包.
我找到了这些链接:
但是,一些包具有依赖性:
list软件包依赖utils和sandwich.Rcmdr软件包依赖grDevices,utils,splines,RcmdrMisc,car.ggplot2包还具有依赖性.我想只安装的软件包Rcmdr,list,ggplot2他们所有的依赖关系.通常,我会这样做:
install.packages(c('Rcmdr','list','ggplot2'), dependencies=TRUE)
Run Code Online (Sandbox Code Playgroud)
质询
如何R CMD仅为一个包指定依赖项选项?这是安装它们的方法吗?
R CMD INSTALL -l Rcmdr dependencies=TRUE, list dependencies=TRUE, \
ggplot2 dependencies=TRUE, afex, lsmeans
Run Code Online (Sandbox Code Playgroud)
或者这不正确?
repos里面指定参数R CMD INSTALL -l?编辑
根据下面的第一条评论,上面sudo不需要.sudo -i R可以替换为.ie R.
关于你的问题:
这可能不是最好的方法.相反Rscript -e 'install.packages(...)',请考虑哪个是R CMD INSTALL ...调用.您可以在此处更好地控制选项.继续阅读......
在工作和家庭的所有Ubuntu机器上,我/etc/R/Rprofile.site通过类似的方式做到这一点
## Example of Rprofile.site
local({
r <- getOption("repos")
r["CRAN"] <- "https://cloud.r-project.org"
r["ghrr"] <- "https://ghrr.github.io/drat"
options(repos = r)
})
Run Code Online (Sandbox Code Playgroud)
我们通常添加第三个和网络本地回购.你可能只想在这里使用CRAN - 它使用RStudio为R Project和R Consortium管理的'永远关闭你'CDN.ghrr drat是我设置的帮手回购.
sudo对于我添加到R的官方Debian/Ubuntu软件包中的某些内容不需要 - 但您需要成为拥有该组的成员/usr/local/lib/R/site-library.
现在,如果可以的话,还有两个建议:
该r可执行文件是通过提供给您sudo apt-get install r-cran-littler.我在命令行上使用它; 你可能想要查看基本install.r脚本和扩展脚本install2.r.我倾向于/usr/local/bin为这些和其他(例如update.r)创建一个从软件包目录到软件包的软链接.多年来我一直在运行许多(Ubuntu和Debian)机器.
我们实际上有大约3000个CRAN包作为Ubuntu的二进制文件,所以你可以这样做,sudo apt-get install ...并且所有 dependendies都会得到解决.看看我的这个脚本(在Travis上使用它们)或我维护的一些Docker文件,例如这个.