【问题标题】:Install R packages using conda via an environment.yml file通过 environment.yml 文件使用 conda 安装 R 包
【发布时间】:2020-06-30 12:23:09
【问题描述】:

通常我会创建 conda 环境,例如...

conda env create -f environment.yml
conda activate env_name

我通常在 Python 中工作,典型的 environment.yml 简单文件可能看起来像这样......

name: env_name
dependencies:
  - python=3.7
  - pip=19.3
  - pandas=0.24.2
  - pip:
    - scipy==1.2.1

environment.yml 文件在安装 R 包时应该是什么样子?包裹在 CRAN 上

【问题讨论】:

    标签: r installation anaconda conda miniconda


    【解决方案1】:

    一般的经验法则是大多数 R 包在 Anaconda Cloud 中都有相应的包,并添加了前缀 r-defaults 频道涵盖了常用软件包,而 conda-forge 频道对 CRAN 的报道最为全面,并且拥有 helpful scripts for adding new ones。我通常建议在创建 R 环境时优先考虑 conda-forge

    对于生物信息学家,所有 Bioconductor 软件包都可通过 bioconda 渠道获得,带有 bioconductor- 前缀和小写字母。比如SingleCellExperiment被打包成bioconductor-singlecellexperiment

    一个好的起点是简单地搜索 Anaconda Cloud (example search)。

    示例

    假设您想要 tidyverse 伞包并希望使用 R v4.1。用于此的 YAML 将是

    name: my_r_env
    channels:
     - conda-forge
    dependencies:
     - r-base=4.1
     - r-tidyverse
    

    附加说明

    避免在任何 R 会话中使用 install.packages() - 由于 R 实例不知道在环境中进行编译,因此很容易出现动态链接问题。这对于纯 R 包来说不是问题,但在这种情况下,将包添加到 conda-forge 应该很简单(大约需要 15 分钟的工作和大约 12-24 小时的周转时间,IME) .

    避免使用 Conda 的 RStudio 包 - 这是一个废弃的项目,旧版本与新的 R 版本不兼容。这可能会更改一次RStudio switches from Qt to Electron。不过,there are better ways 将环境加载到 RStudio 中,而无需在环境中安装完整的 IDE

    【讨论】:

    • ....什么时候可以通过这些渠道获得?
    • @LudvigH 取决于它在哪里可用以及是否需要编译。如果您有具体细节,我建议您提出一个新问题。如果您想让我看看,请再次在此处标记我。
    • 我在这里写的:stackoverflow.com/questions/65984771/… 并希望得到任何指导。
    • 在哪里指定 r 版本?
    • @liang 你可以添加r-base=4.1作为依赖(例如)
    猜你喜欢
    • 1970-01-01
    • 2015-10-02
    • 2019-02-03
    • 2018-12-24
    • 1970-01-01
    • 2018-01-12
    • 2018-01-10
    • 1970-01-01
    • 2019-11-04
    相关资源
    最近更新 更多