美文网首页数据科学与R语言
一劳永逸的R语言运行环境管理方法

一劳永逸的R语言运行环境管理方法

作者: 大道无形x我有型 | 来源:发表于2021-05-15 10:29 被阅读0次
        利用Anaconda进行R语言环境的管理。
    

    什么是Anaconda

    Anaconda 是一种Python语言的免费增值开源发行版,用于进行大规模数据处理、预测分析,和科学计算,致力于简化包的管理和部署。Anaconda不等同于Python,Anaconda也为R语言提供了包的管理和部署。安装anaconda让我们省去了大量下载模块包的时间,更加方便。由于其安装教程较多,就不展开介绍,自行搜索。

    为当前环境安装 “R Essentials”

    conda install -c r r-essentials#终端输入

    或者创建 “R essentials” 的新环境

    conda create -n my-r-env -c r r-essentials#终端输入

    conda安装R包

    conda install -c r r-dplyr#终端输入

    如果以上搞不定,可以访问anaconda cloud, 搜索对应的包,会给出R包安装方法

    加快下载速度

    发现“中国科学技术大学”(USTC Open Source Software Mirror)有提供anaconda的镜像源,按照如下命令配置anaconda后,下载速度明显加快!

    conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/

    conda config --set show_channel_urls yes

    加载rstudio

    WIN+R 输入cmd运行终端,在终端输入以下代码

    rstudio

    conda环境迁移

    Clone

    在本地,conda 可以方便地创建环境的快照或者备份:

    conda create --name snapshot --clone myenv

    Spec List

    如果需要在具有 相同操作系统 的计算机之间复制环境,则可以生成 spec list。

    生成 spec list 文件:

    conda list --explicit > spec-list.txt
    重现环境:

    conda create --name python-course --file spec-list.txt

    Environment.yml

    也可以使用 -export 选项生成一个 environment.yml 文件,以在 不同的平台和操作系统之间 复现项目环境。 spec list 文件和 environment.yml 文件之间的区别在于: environment.yml 文件不针对特定操作系统,并且使用YAML格式。 environment.yml 仅列出了软件包名称,由 conda 基于软件包的名称构建环境。 另一个区别是 -export 还包括使用pip安装的软件包,而 spec list 则没有。

    导出 environment.yml 文件:

    conda env export > environment.yml
    注意:如果当前路径已经有了 environment.yml 文件,conda 会重写这个文件
    重现环境:

    conda env create -f environment.yml

    Conda Pack

    Conda-pack 是一个命令行工具,用于打包 conda 环境,其中包括该环境中安装的软件包的所有二进制文件。 当您想在有限或没有网络访问的系统中重现环境时,此功能很有用。上面的方法均从其各自的存储库下载软件包以创建环境。而此方法不需要。注意,conda-pack 指定平台和操作系统,目标计算机必须具有与源计算机相同的平台和操作系统。

    要安装 conda-pack,请确保您位于 root 或 base 环境中,以便 conda-pack 在子环境中可用。

    conda install -c conda-forge conda-pack

    打包一个环境:

    Pack environment my_env into my_env.tar.gz

    conda pack -n my_env

    Pack environment my_env into out_name.tar.gz

    conda pack -n my_env -o out_name.tar.gz

    Pack environment located at an explicit path into my_env.tar.gz

    conda pack -p /explicit/path/to/my_env

    重现环境:

    Unpack environment into directory my_env

    mkdir -p my_env tar -xzf my_env.tar.gz -C my_env

    Use Python without activating or fixing the prefixes. Most Python
    libraries will work fine, but things that require prefix cleanups
    will fail.

    ./my_env/bin/python

    Activate the environment. This adds my_env/bin to your path
    source my_env/bin/activate
    Run Python from in the environment

    (my_env) $ python

    Cleanup prefixes from in the active environment.
    Note that this command can also be run without activating the environment
    as long as some version of Python is already installed on the machine.

    (my_env) $ conda-unpack

    参考文章:https://zhuanlan.zhihu.com/p/87344422

    相关文章

      网友评论

        本文标题:一劳永逸的R语言运行环境管理方法

        本文链接:https://www.haomeiwen.com/subject/ckyhjltx.html