anaconda 删除环境_Anaconda:解决你装包的烦恼

2023-11-19

生物信息学的日常就是利用五花八门的工具和各种各样的数据打交道,很多时候需要在命令行安装软件或者包。我相信每一个生信人都碰到过安装软件或包时无法解决依赖的囧况,安装软件或者包,听起来是一件很简单的一件事,实际情况却不是如此。比如说编译时碰到系统lib不存在或版本太低,安装一个python/R包却需要升级当前的python/R,而这又会导致之前安装好的包不能使用。今天给大家介绍一下跨平台包管理神器Anaconda,学习一下它在Linux下的正确使用姿势。

Anaconda是什么?

官方介绍“The World's Most Popular Python/R Data Science Platform”。简单来说,Anaconda是包管理器和环境管理器。

安装 Anaconda

在清华大学 TUNA 镜像源(https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/)选择对应的操作系统与所需的Python版本下载Anaconda安装包。比如我下载了Anaconda3-2019.10-Linux-x86_64.sh这个安装包,那么安装命令如下

bash Anaconda3-2019.10-Linux-x86_64.sh

后面会有一些选项停顿,直接回车确认。

1. 包管理**

安装包

假如我要安装scipy这个科学计算包,那么可以输入如下命令

conda install scipy

conda会自动搜索并解决包依赖项,你只需要按回车即可。有时候我们想安装某个指定版本的包,那么就需要先知道conda里面存在哪些版本的包,可以输入如下命令就行搜索

conda search scipy

搜索结果还挺多的,部分结果如下

如果我想安装0.19.1这个版本的scipy,那么输入如下命令

scipy

最后一列信息为channel,这个channe是很重要的一个信息,有时候一些包找不到,很大原因是当前的channe里面还没有,但是其他channel实际上有。怎样添加channel呢?稍安勿躁,后面添加镜像部分会提到。

删除包

有安装就有卸载,卸载包命令如下

conda remove scipy

更新包

conda update scipy

2. 管理环境

环境非常有用,它能让你为某个项目单独建立一个运行时,而不会与现有的环境产生冲突。此外,当你需要将项目迁移到其他机器的时候,可以将整个环境迁移过去,彻底解决移植的难题。

建立环境

先看如下命令

conda create -n env_name package_names

上面的命令中,env_name 是设置环境的名称(-n 是指该命令后面的env_name是你要创建环境的名称),package_names 是你要安装在创建环境中的包名称。例如创建环境名称为py3,并安装最新版本的Python3,那么在终端中输入

python

列出环境

conda env list

你会看到环境的列表,而且你当前所在环境的旁边会有一个星号。

删除环境

如果你不再使用某个环境,可以使用如下命令删除指定的环境

conda env remove -n env_name

进入环境

source activate env_name

在环境中安装包的命令与前面一样:conda install package_name。不过,这次你安装的包仅在你进入此环境后才可用。其他环境是不知道这个包的存在的。

离开环境

source deactivate

共享环境

共享环境非常有用,它能让其他人安装你的代码中使用的所有包,并确保这些包的版本正确。比如你开发了一个数据分析系统,你要提交给项目部署系统的王二狗来部署你的项目,但是王二狗并不知道你当时开发时使用的是哪个python版本,以及使用了哪些包和包的版本。这怎么办呢?你可以在你的环境中终端中使用如下命令将你当前的环境保存到文件中。

export > environment.yaml

导出的环境文件,在其他电脑中如何使用呢?使用如下命令加载刚刚导出的环境

conda env create -f environment.yaml

3. 设置国内镜像

如果需要安装很多packages,你会发现conda下载的速度经常很慢,因为http://Anaconda.org的服务器在国外。所幸的是,清华TUNA镜像源(https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/)有Anaconda仓库的镜像,如下图所示:

将红框中的代码复制保存到 ~/.condarc 文件。这个文件记录着我们对conda的配置。保存之后可以用如下命令检查一下

conda config  --show

可以看到已经成功加入了几个不同channels的镜像地址。

专注生物学领域的bioconda的channel也包含在里面了。假设需要安装DESeq2这个包,这是一个发布在bioconductor的R包。默认的channel里面是没有的。可以使用如下命令进行安装

conda install -c bioconda bioconductor-deseq

上述命令中的“-c bioconda”就是告诉conda,要去bioconda这个channel这个源去检索DESeq2这个包。

4. 加分篇

重命名环境

conda create --name newname --clone oldname  #克隆环境

回滚

conda list --revisions

欢迎关注公众号:"生物信息学"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

anaconda 删除环境_Anaconda:解决你装包的烦恼 的相关文章

随机推荐

  • 14个SpringBoot优化小妙招,看完后同事说写代码像写诗!

    大家好 我是东哥 每次聊到代码优化 都会有很多人说理论 架构 核心思路 其实我觉得代码优化这事说简单了很简单 说复杂了吧它也有一定的难度 但是我觉得有一个良好的编码习惯很重要 下面分享一下14个springboot项目中优化代码的小技巧 让
  • Python - 我写代码时如果有一行过长该怎么处理?

    Python的编码规范要求每行的长度不超过80 那就就有一个问题 如果我真的需要在一行写80个字符以上的代码怎么办 Python语句都可以很简单的实现把一行分为多行 比如下面这两种写法是等价的 l 1 2 3 4 5 6 l 1 2 3 4
  • 逻辑电平及其相关知识的学习

    最近开始学习通信方面的知识 以问题的形式学习 也以问题的方式展示在这里 由于现在也没有具体的目标 学习深度随缘 任何一个知识点要深究都是一门学科 欢迎批评指正交流 目录 什么是逻辑电平 CMOS是什么意思 TTL是什么意思 逻辑电平的5个基
  • Angular4.0_页面搭建

    开发页面布局 app component hrml
  • 系统架构设计师之软件架构风格

    系统架构设计师之软件架构风格
  • C# Math.Round()四舍五入、四舍六入五成双

    开发者为了实现小数点后 2 位的四舍五入 编写了如下代码 var num Math Round 12 125 2 代码非常的简单 开发者实际得到的结果是12 12 这与其所预期的四舍五入结果12 13相悖 其实产生这个结果的原因是由于Mat
  • 什么是 T-Kernel

    本文译至 http www t engine org what is t kernel 什么 T Kernel T Kernel 实时操作系统是由T Engine论坛开发的用以满足下一代普适计算环境设备性能要求的OS T Engine 是一
  • web designer设计器编译问题

    web designer设计器编译问题 下载地址 https github com xiaoai7904 web designer 开发工具 Visual Studio Code 执行npm install 初次安装编译过程中会出现 dll
  • word工具栏菜单栏隐藏打开的办法

    windows中打开 开始 运行 键入 winword a 然后 确定 即可恢复默认工具栏 重新打开文档
  • [基本功]辛普森悖论

    辛普森悖论是指什么现象 当人们尝试探究两种变量 比如新生录取率与性别 是否具有相关性时 会分别对之进行分组研究 然而 在分组比较中都占优势的一方 在总评中有时反而是失势的一方 上表中 商学院女生录取率为49 lt 男生录取率75 法学院女生
  • 我做了10年的测试,由衷的建议年轻人别入这行了

    两天前 有个做功能测试7年的同事被裁员了 这位老哥已经做到了团队中的骨干了 人又踏实 结果没想到刚刚踏入互联网 老龄化 大关 就被公司给无情优化了 现在他想找同类型的工作 薪资也一直被压 考虑转行转型的话 上升空间又窄 昨天还在指点江山 今
  • 【计算机视觉

    文章目录 一 PASCAL Context 二 DAVIS 2017 三 COCO Stuff Common Objects in COntext stuff 四 RefCOCO 五 CamVid Cambridge driving Lab
  • 7.Xaml Image控件

    1 运行图片 2 运行源码 a xaml源码
  • 2016视觉目标跟踪总结

    最近学习视觉目标跟踪算法 主要了解了几个主流的跟踪算法 kcf stc dsst 算法原理网上很多 这里就不再赘述 只对跟踪效果做了测试记录 Kcf 全名Kernelized Correlation Filters 其中hog特征用的fho
  • 嵌入式(条件变量和线程池)

    条件变量 应用场景 生产者消费者问题 是线程同步的一种手段 必要性 为了实现等待某个资源 让线程休眠 提高运行效率 int pthread cond wait pthread cond t restrict cond pthread mut
  • 开头为0的md5值总结

    s878926199a 0e545993274517709034328855841020 s155964671a 0e342768416822451524974117254469 s214587387a 0e8482404488305379
  • MATLAB曲线拟合灵敏度,用Matlab曲线拟合工具箱curve fitting曲线拟合,原来是这样的...

    在使用Matlab软件时 对于曲线拟合来说 有两种方式 其一是编写程序代码 其二是利用Curve fitting工具箱进行 本例通过一个多项式拟合的小试验 向您介绍利用curve fitting工具箱进行曲线拟合的一般步骤 工具 材料 Ma
  • 分块查找算法思路、示例和实现

    分块查找 索引表 22 44 74 数组 22 12 13 9 8 33 42 44 38 24 48 60 58 74 47 算法步骤 通过索引表线性查找确定在数组的哪一 块 通过数组里所在 块 的线性查找确定是否存在 在哪个位置 算法代
  • 2023西安交通大学软件工程915考研经验帖(初试+复试)

    目录 前言 一 初试准备 数学 英语 政治 专业课 总结 杂项 二 复试准备 1 笔试 数据库 操作系统 2 面试 总结 前言 本文仅记录我考研期间 2022 12初试 2023 3复试 的经验和感受 不具有普适性 请根据自身情况调整学习计
  • anaconda 删除环境_Anaconda:解决你装包的烦恼

    生物信息学的日常就是利用五花八门的工具和各种各样的数据打交道 很多时候需要在命令行安装软件或者包 我相信每一个生信人都碰到过安装软件或包时无法解决依赖的囧况 安装软件或者包 听起来是一件很简单的一件事 实际情况却不是如此 比如说编译时碰到系