我必须在Ubuntu16.10系统上执行远程R安装。作为其中的一部分,我必须在该主机上安装特定的软件包。我想安装这些软件包Rcmdr,list,ggplot2,afex,lsmeans。因为我是远程的,所以我不能用
sudo -i R首先输入R,然后用install.packages()安装。相反,我必须以某种方式从Ubuntu安装软件包。
我发现了这些联系:
但是,有些包具有依赖关系:
list包依赖于utils和sandwich。Rcmdr包依赖于grDevices、utils、splines、RcmdrMisc、car。ggplot2包也有依赖项。我只想安装包Rcmdr、list、ggplot2及其所有依赖项。通常,我会这样做:
install.packages(c('Rcmdr','list','ggplot2'), dependencies=TRUE)问题
R CMD中为一个包指定依赖项选项?这是安装它们的方法吗?
安装-l Rcmdr dependencies=TRUE,list dependencies=TRUE,\ ggplot2 dependencies=TRUE,afex,list
还是这样不对?repos中指定R CMD INSTALL -l参数编辑
根据下面的第一个注释,sudo不需要在上面。sudo -i R可以由R代替。
发布于 2016-12-30 15:54:26
关于你的问题:
问题1
这可能不是最好的办法。相反,考虑一下Rscript -e 'install.packages(...)',这就是R CMD INSTALL ...所称的。你最好能控制这里的选择。继续读下去..。
问题2
在所有的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)
})在这里我们通常增加第三个和网络本地回购。您可能只想在这里使用CRAN --它使用的是RStudio为R项目和R Consortium管理的“始终接近您”的CDN。它是我设置的一种帮助装置。
问题3
在我为R添加的正式Debian/Ubuntu包中,并不需要sudo --但您需要成为拥有/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 ...就可以解决所有的依赖问题。查看我的剧本 (在Travis上使用它们)或一些我维护的Docker文件,比如这一个。
https://stackoverflow.com/questions/41397865
复制相似问题