安装R包报错解决思路

这算是批量下载R包的续篇了。

现状

  1. 安装 R 包报错稀奇古怪,根据报错信息在网络上找不到多少教程,或者按照网上的教程去做也不一定。往往因为一个或几个安装不上的 R 包,要花上个把小时的时间,甚至最终还是解决不了,令人火大,效率低下。
  2. R 包之间可能存在冲突。举个例子,最近新安装了 GenomicRanges 包之后,发现之前安装的 tidyverse 就自动没了,而且之后死活安装不上。
  3. 使用 conda 安装 R 包可行,但是可能会弄乱环境,可能使得其它已经安装的 R 包无法正常使用(因为 conda 权限太高,过于霸道,会自动安装、卸载,更改(版本)其它R包和软件)。甚至于我用 conda 卸载别的软件,它顺带把我的 R 也卸载了。

方法论

因为安装 R 包存在的种种问题,结合飞哥的启发,我整理了一套解决R包安装失败的方法论。

  1. 备份之前的 library 文件夹,如果存在这个 R 包,则直接将其文件夹 (及附属R包) 复制过来,测试是否成功(注意 R 版本必须完全保持一致,比如我目前都是用的 4.1.0 版本 )。
  2. 还是根据报错信息在网上找教程,稍微尝试几下,注意不要花太多时间,敢于放弃。
  3. 前两步都失败的话,则用 conda创建一个专门下载 R 包的虚拟环境,在其中用默认方式和conda install下载安装R包,安装成功后将其在 library 中的文件夹复制过来。
  4. 如果还不行,用 conda再创建一个全新的虚拟环境(相当于重头再来),只安装这一个 R 包(避免其它已经安装的 R包的影响)。

示例脚本如下,更详细的脚本和解释见软件学习-conda

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
conda create --name R4.1 python=3.9.10
conda activate R4.1
conda search r
conda install r-base=4.1.0

# 进入 R 环境
/mnt/data/zhouziwen/lib/miniconda3/envs/R4.1/bin/R
install.packages("")
BiocManager::install("")
packageVersion("")

# 使用 conda 安装
conda search r-showtext
conda install r-showtext

# 如果无法使用,则卸载,重新安装一个版本比较低的
conda uninstall r-showtext

# 退出虚拟环境
conda deactivate
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2019-2024 Vincere Zhou
  • 访问人数: | 浏览次数:

请我喝杯茶吧~

支付宝
微信