每次我使用自制软件升级R我都需要再次安装大多数软件包

时间:2015-01-09 18:24:56

标签: r homebrew

R软件包已安装到/usr/local/Cellar/r/3.1.2_1/R.framework/Versions/3.1/Resources/library

每当我运行brew upgrade r和R版本的更改时,我需要再次安装大多数库,因为安装路径会发生变化。

如何升级而无需重新安装所有内容?

编辑:我认为这回答了我的问题http://stackoverflow.com/questions/1401904/painless-way-to-install-a-new-version-of-r-on-windows

3 个答案:

答案 0 :(得分:2)

我将.libPaths("/Users/tim/.R/packages")放在我的~/.Rprofile中,以便将软件包安装到版本崩溃后不会消失的路径。

答案 1 :(得分:1)

通过包含BioConductor和CRAN的包来扩展其他答案。

  1. 安装前:备份当前包列表。

    tmp <- installed.packages() installedpkgs <- as.vector(tmp[is.na(tmp[,"Priority"]), 1]) save(installedpkgs, file="installed_old.rda")

  2. 安装新版本的R

  3. 从CRAN重新加载包

    load("installed_old.rda") tmp <- installed.packages() installedpkgs.new <- as.vector(tmp[is.na(tmp[,"Priority"]), 1]) missing <- setdiff(installedpkgs, installedpkgs.new) install.packages(missing) update.packages()

  4. 从BioConductor重新加载包裹

    chooseBioCmirror() biocLite() load("installed_old.rda") tmp <- installed.packages() installedpkgs.new <- as.vector(tmp[is.na(tmp[,"Priority"]), 1]) missing <- setdiff(installedpkgs, installedpkgs.new) for (i in 1:length(missing)) biocLite(missing[i])

答案 2 :(得分:0)

  1. 将包列表另存为R数据文件

    tmp&lt; - installed.packages() installedpkgs&lt; - as.vector(tmp [is.na(tmp [,“Priority”]),1]) save(installedpkgs,file =“installed_old.rda”)

  2. 安装新版本

  3. 加载列表,然后从CRAN下载旧包

    OAD( “installed_old.rda”) tmp&lt; - installed.packages() installedpkgs.new&lt; - as.vector(tmp [is.na(tmp [,“Priority”]),1]) 缺少&lt; - setdiff(installedpkgs,installedpkgs.new) install.packages(失踪) update.packages()