【问题标题】:What are the differences between Conda and Anaconda?Conda 和 Anaconda 有什么区别?
【发布时间】:2015-07-14 02:48:12
【问题描述】:

问题后更新:

更多详情请见Introduction to Conda


问题:

我首先在我的 ubuntu 上安装了 Anaconda,地址为 ~/anaconda,当我尝试更新我的 anaconda 时,根据 Continuum Analytics 的 documentation,我应该使用以下命令:

conda update conda
conda update anaconda

然后我意识到我没有安装 conda,所以我使用来自here 的文档安装它。

conda安装后,当我运行conda update anaconda时,出现如下错误:

错误:包 'anaconda' 没有安装在 /home/xiang/miniconda 中

看来 conda 假设我的 anaconda 安装在 /home/xiang/miniconda 下,这是 NOT true。

问题:

  1. condaanaconda有什么区别?
  2. 如何告诉 conda 我的 anaconda 安装在哪里?

【问题讨论】:

标签: python anaconda conda


【解决方案1】:

简介

conda既是一个命令行工具,也是一个python包。

Miniconda 安装程序 = Python + conda

Anaconda 安装程序 = Python + conda + 元包 anaconda

meta Python pkg anaconda = 大约 160 个其他 Python 包,用于数据科学中的日常使用

Anaconda 安装程序 = Miniconda 安装程序 + conda install anaconda

详情

conda 是环境管理器和包管理器。这意味着工具本身。 conda 可以实现

  • conda install flake8安装包
  • 使用conda create -n myenv python=3.6 使用任何版本的 Python 创建环境

conda 不是二进制命令,是 Python 包。要使conda 工作,您必须创建一个Python 环境并将包conda 安装到其中。这就是 Anaconda 安装程序和 Miniconda 安装程序的用武之地。

安装程序 Minoconda 安装 Python 和包 conda。安装程序 Anaconda 不仅完成了 Miniconda 的工作,它还为您安装了一个名为 anacondameta Python 包。

元包,是不包含实际软件的包,仅依赖于要安装的其他包。

pkg anaconda 中包含的实际 160 多个 python 包在其source file 中的info/recipe/meta.yaml 中列出。

package:
    name: anaconda
    version: '2019.07'
build:
    ignore_run_exports:
        - '*'
    number: '0'
    pin_depends: strict
    string: py36_0
requirements:
    build:
        - python 3.6.8 haf84260_0
    is_meta_pkg:
        - true
    run:
        - alabaster 0.7.12 py36_0
        - anaconda-client 1.7.2 py36_0
        - anaconda-project 0.8.3 py_0
        # ...
        - beautifulsoup4 4.7.1 py36_1
        # ...
        - curl 7.65.2 ha441bb4_0
        # ...
        - hdf5 1.10.4 hfa1e0ec_0
        # ...
        - ipykernel 5.1.1 py36h39e3cac_0
        - ipython 7.6.1 py36h39e3cac_0
        - ipython_genutils 0.2.0 py36h241746c_0
        - ipywidgets 7.5.0 py_0
        # ...
        - jupyter 1.0.0 py36_7
        - jupyter_client 5.3.1 py_0
        - jupyter_console 6.0.0 py36_0
        - jupyter_core 4.5.0 py_0
        - jupyterlab 1.0.2 py36hf63ae98_0
        - jupyterlab_server 1.0.0 py_0
        # ...
        - matplotlib 3.1.0 py36h54f8f79_0
        # ...
        - mkl 2019.4 233
        - mkl-service 2.0.2 py36h1de35cc_0
        - mkl_fft 1.0.12 py36h5e564d8_0
        - mkl_random 1.0.2 py36h27c97d8_0
        # ...
        - nltk 3.4.4 py36_0
        # ...
        - numpy 1.16.4 py36hacdab7b_0
        - numpy-base 1.16.4 py36h6575580_0
        - numpydoc 0.9.1 py_0
        # ...
        - pandas 0.24.2 py36h0a44026_0
        - pandoc 2.2.3.2 0
        # ...
        - pillow 6.1.0 py36hb68e598_0
        # ...
        - pyqt 5.9.2 py36h655552a_2
        # ...
        - qt 5.9.7 h468cd18_1
        - qtawesome 0.5.7 py36_1
        - qtconsole 4.5.1 py_0
        - qtpy 1.8.0 py_0
        # ...
        - requests 2.22.0 py36_0
        # ...
        - sphinx 2.1.2 py_0
        - sphinxcontrib 1.0 py36_1
        - sphinxcontrib-applehelp 1.0.1 py_0
        - sphinxcontrib-devhelp 1.0.1 py_0
        - sphinxcontrib-htmlhelp 1.0.2 py_0
        - sphinxcontrib-jsmath 1.0.1 py_0
        - sphinxcontrib-qthelp 1.0.2 py_0
        - sphinxcontrib-serializinghtml 1.1.3 py_0
        - sphinxcontrib-websupport 1.1.2 py_0
        - spyder 3.3.6 py36_0
        - spyder-kernels 0.5.1 py36_0
        # ...

从以上信息来看,meta pkg anaconda 的预安装包主要用于网络抓取和数据科学。比如requestsbeautifulsoupnumpynltk

如果您安装了 Miniconda,conda install anaconda 将使其与 Anaconda 安装相同,只是安装文件夹名称不同。

【讨论】:

  • 绝对喜欢你如何解释每个概念之间的差异!谢谢
  • 这既令人困惑又是最清晰的解释。漂亮。
【解决方案2】:

conda 是包管理器。 Anaconda 是一组大约一百个包,包括 conda、numpy、scipy、ipython notebook 等。

您安装了 Miniconda,它是 Anaconda 的一个较小的替代品,它只是 conda 及其依赖项,而不是上面列出的那些。

拥有 Miniconda 后,您可以使用 conda install anaconda 轻松将 Anaconda 安装到其中。

【讨论】:

  • 你会推荐这样做吗?
  • @Archie,这取决于你想要什么。参见例如this post
猜你喜欢
  • 1970-01-01
  • 2014-01-26
  • 1970-01-01
  • 2020-10-26
  • 2021-01-08
  • 2016-08-18
  • 2019-03-06
  • 2016-11-08
  • 2015-04-21
相关资源
最近更新 更多