【发布时间】:2019-10-09 08:37:37
【问题描述】:
我正在尝试以一种能够感知包是否存在然后安装它的方式来打包我的软件。例如下面我利用库函数中的logical.return。原因是我的代码开始传播到世界各地,我希望它能够自动安装必要的包,这样用户就不必在包不存在时处理错误。
这组代码写在我要导入的所有函数的最前面。
我的设想是,如果包不存在,这组代码将安装包。然而这组代码并没有达到我的预期。
我的第一个问题是如何在执行下面的代码之前指定我的 CRAN 镜像。
我的第二个问题是有更好的方法来完成这个吗?
if( !library(reticulate, logical.return = T) ){
install.packages('reticulate');library(reticulate)
}
if( !library(png, logical.return = T) ){
install.packages('png');library(png)
}
if( !library(RColorBrewer, logical.return = T) ){
install.packages('RColorBrewer');library(RColorBrewer)
}
【问题讨论】:
-
感谢@Dason:我在搜索重复之前回答了...
标签: r