我如何指示 R 安装所有尚未安装的 Bioconductor 包?

How do I instruct R to install all Bioconductor packages that are not already installed?

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

安装所有 Bioconductor 软件包

biocLite(all_group())

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

您可以相当轻松地使用

IP <- installed.packages()

AP <- available.packages()

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

我会小心谨慎地安装 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 最近发生了变化(在过去一两年内)。