【问题标题】:How do I instruct R to install all Bioconductor packages that are not already installed?如何指示 R 安装所有尚未安装的 Bioconductor 软件包?
【发布时间】:2017-03-20 01:01:08
【问题描述】:

显然安装所有的 Bioconductor 包并没有那么麻烦

安装所有 Bioconductor 软件包

biocLite(all_group())

但是,如果您只想安装那些不可用且安装在您的计算机上的软件包,那么正确的做法是什么?

【问题讨论】:

    标签: r installation bioconductor


    【解决方案1】:

    您可以相当轻松地使用

    IP <- installed.packages()
    

    AP <- available.packages()
    

    然后将这些输入到setdiff() 以计算差异。

    【讨论】:

    • 谢谢@Dirk。您的解决方案效果很好! IP &lt;- as.data.frame(installed.packages())AP &lt;- as.data.frame(available.packages())install.packages(setdiff(AP[,1],IP[,1]))
    【解决方案2】:

    我会小心在 BioConductor 中安装差异。我遇到过最初安装依赖于B.1 的包A.1 的情况。几周或几个月后,我安装了依赖于B.2 的包C.2

    请记住,BioConductor保留最新版本的可用软件包。这意味着 B.1 不再可通过 BioConductor 获得。所以R 以其无限的智慧,很乐意用B.2 破坏您之前安装的B.1破坏A.1 的功能,并将您的整个安装变成一团糟。

    为缓解此问题,我建议您一次安装要使用的所有软件包。使用最新版本的 R(现在是 3.6.0)例如

    # Install into directory of your choosing.
    # Be sure to appropriately set .libPaths in your .Rprofile
    .libPaths = .libPaths("/some/local/path/3.6.0-lib_all_bioc") 
    
    install.packages("BiocManager")
    library(BiocManager)
    repos = BiocManager::available()
    BiocManager::install(repos)
    

    请记住,用于安装 BioConductor 的 instructions 最近发生了变化(过去一两年)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-30
      • 1970-01-01
      • 2017-02-01
      • 2020-09-08
      • 2016-01-18
      • 2020-03-20
      • 1970-01-01
      • 2019-07-21
      相关资源
      最近更新 更多