被迫在linux上用R(真的很难用啊)之如何在linux上正常使用R

总有一些情况,让你不得不在linux上使用R。。。

在我不断试错,不断尝试过程中(恩,新手疯狂踩坑)

发现最简单的办法是:

1 mamba创建一个新环境,在新环境中使用R

2 转变思维,都在linux上使用R了,就不要想着可视化,别像win上那样安装一个包就install.packages()。

这里巨坑,因为,首先可能会安装到默认环境中的R中,而不是指定环境中;其次,存在依赖下载不全或版本不符合导致安装不成功。

3 所以,转变成linux下载软件的形式,

直接用mamba下载所需包,比如:

bash 复制代码
 mamba install -c conda-forge r-rlang r-readr r-dplyr

部分安装过程:

bash 复制代码
 Updating specs:

   - r-rlang
   - r-readr
   - r-dplyr
   - ca-certificates
   - openssl


  Package          Version  Build          Channel                                                      Size
──────────────────────────────────────────────────────────────────────────────────────────────────────────────
  Install:
──────────────────────────────────────────────────────────────────────────────────────────────────────────────

  + r-hms            1.1.3  r44hc72bb7e_2  conda-forge                                                 109kB
  + r-tidyselect     1.2.1  r44hc72bb7e_1  conda-forge                                                 219kB
  + r-clipr          0.8.0  r44hc72bb7e_3  conda-forge                                                  70kB
  + r-generics       0.1.4  r44hc72bb7e_0  conda-forge                                                  90kB
  + r-assertthat     0.2.1  r44hc72bb7e_5  conda-forge                                                  72kB
  + r-prettyunits    1.2.0  r44hc72bb7e_1  conda-forge                                                 160kB
  + r-progress       1.2.3  r44hc72bb7e_1  conda-forge                                                  95kB
  + r-tzdb           0.5.0  r44h93ab643_0  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge     553kB
  + r-bit            4.6.0  r44h2b5f3a1_0  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge     622kB
  + r-dplyr          1.1.4  r44h0d4f4ea_1  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge       1MB
  + r-bit64        4.6.0_1  r44h2b5f3a1_0  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge     504kB
  + r-vroom          1.6.5  r44h0d4f4ea_1  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge     874kB
  + r-readr          2.1.5  r44h0d4f4ea_1  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge     811kB

或者是这种

bash 复制代码
mamba install -c bioconda bioconductor-genomation

部分安装过程:

bash 复制代码
  Updating specs:

   - bioconductor-genomation
   - ca-certificates
   - openssl


  Package                    Version  Build             Channel                                                      Size
───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
  Install:
───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

  + bioconductor-impute       1.80.0  r44h4d5c4aa_1     bioconda                                                    689kB
  + r-plotrix                  3.8_4  r44hc72bb7e_1     mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge       1MB
  + r-gridbase                 0.4_7  r44hc72bb7e_1006  mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge     179kB
  + bioconductor-bsgenome     1.74.0  r44hdfd78af_0     bioconda                                                      7MB
  + bioconductor-seqpattern   1.38.0  r44hdfd78af_0     bioconda                                                      4MB
  + bioconductor-genomation   1.38.0  r44he5774e6_0     bioconda                                                      3MB

  Summary:

  Install: 6 packages

  Total download: 16MB

恩,只要网络好,就能成功下载下来。

然后再在R脚本开头加上一行这个(你的环境的绝对路径):

bash 复制代码
.libPaths(c("/storage2/xxx/mambaforge/envs/genome/lib/R/library", .libPaths()))

目的是让运行R脚本时,用的库是这个环境下的库,而不是bace环境下的库。

再运行R的脚本,就没问题了。