我如何指示 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 最近发生了变化(在过去一两年内)。
显然安装所有 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 最近发生了变化(在过去一两年内)。