Anaconda vs.Miniconda

203

En el repositorio de Anaconda , hay dos tipos de instaladores:

" Instaladores de Anaconda " e " Instaladores de Miniconda ".

¿Cuáles son sus diferencias?

Además, para un archivo instalador Anaconda2-4.4.0.1-Linux-ppc64le.sh, ¿qué significa 2-4.4.0.1?

usuario288609
fuente

Respuestas:

135

La diferencia es que miniconda solo está enviando el sistema de gestión de repositorio. Entonces, cuando lo instala, solo existe el sistema de administración sin paquetes. Mientras que con Anaconda, es como una distribución con algunos paquetes integrados.

Al igual que con cualquier distribución de Linux, hay algunas versiones que incluyen muchas actualizaciones para los paquetes incluidos. Es por eso que hay una diferencia en la numeración de versiones. Si solo decide actualizar Anaconda, está actualizando un sistema completo.

Y0da
fuente
3
Miniconda no solo envía el sistema de gestión de repositorio. Python viene incluido con él, y algunos otros paquetes también. Puedes verificarlo corriendo conda listinmediatamente después de haber instalado Miniconda.
Michael
@Michael seguro que crea un rootentorno y finge con cosas.
Y0da
1
@Michael lo siento error tipográfico: antecede
Y0da
324

Según los documentos originales (el enlace ahora está muerto):

Elija Anaconda si usted:

  • Son nuevos en conda o Python
  • Como la conveniencia de tener Python y más de 150 paquetes científicos instalados automáticamente a la vez
  • Tener el tiempo y el espacio en disco (unos minutos y 3 GB), y / o
  • No quiera instalar cada uno de los paquetes que desea usar individualmente.

Elija Miniconda si usted:

  • No le importa instalar cada uno de los paquetes que desea usar individualmente.
  • No tiene tiempo ni espacio en disco para instalar más de 150 paquetes a la vez, y / o
  • Solo quiero acceso rápido a Python y los comandos conda, y deseo ordenar los otros programas más tarde.

Yo uso Miniconda yo mismo. Anaconda está hinchada. Muchos de los paquetes nunca se usan y aún pueden instalarse fácilmente si es necesario.

Tenga en cuenta que Conda es el administrador de paquetes (por ejemplo, conda listmuestra todos los paquetes instalados en el entorno), mientras que Anaconda y Miniconda son distribuciones. Una distribución de software es una colección de paquetes, preconstruidos y preconfigurados, que se pueden instalar y usar en un sistema. Un administrador de paquetes es una herramienta que automatiza el proceso de instalación, actualización y eliminación de paquetes.

Anaconda es una distribución completa del software central en el ecosistema PyData, e incluye Python junto con los binarios para varios cientos de proyectos de código abierto de terceros. Miniconda es esencialmente un instalador para un entorno conda vacío, que contiene solo Conda, sus dependencias y Python. Fuente .

Una vez que se instala Conda, puede instalar cualquier paquete que necesite desde cero junto con cualquier versión deseada de Python.

2-4.4.0.1es el número de versión para su paquete de instalación de Anaconda. Curiosamente, no figura en sus listas de paquetes antiguos .

En abril de 2016, el control de versiones de Anaconda aumentó de 2.5 a 4.0 para evitar confusiones con las versiones 2 y 3. de Python. La versión 4.0 incluía el navegador Anaconda.

Las notas de la versión para versiones posteriores se pueden encontrar aquí .

Alejandro
fuente
Como una pregunta de seguimiento. Dado que condalleva tanto tiempo instalar paquetes y eso anacondaviene con todos estos paquetes adicionales, ¿no le anacondadaría "acceso más rápido a Python" y otros paquetes que miniconda? Estoy usando en minicondaeste momento, pero vaya que es muy lento.
mimoralea
Las preguntas de seguimiento siempre deben publicarse como una nueva pregunta. Una vez que instale todos los paquetes con conda, debe actualizar constantemente los paquetes que no necesita, lo que, en mi opinión, es más complicado que simplemente instalar y actualizar los paquetes que se usan. Además, la miniconda no es lenta. De hecho, instalar un subconjunto de paquetes es más rápido que instalar todo.
Alexander
1
2no es parte de la versión, es parte del nombre de Anaconda: en la Anaconda2-4.4.0.1-Linux-ppc64le.shversión 4.4.0.1 de Anaconda2 (para Linux que se ejecuta en PowerPC de 64 bits Little Endian).
David Jones
¿Pero no puedo entender si la anaconda y / o la miniconda también están permitidas para uso comercial? Anaconda ofrece una "edición individual" y una "edición en equipo" pero en la licencia no puedo leer que la "edición individual" está prohibida para su uso en entornos de producción.
la mano de NOD
22

Breve

conda es una herramienta de línea de comandos y un paquete de Python.

Instalador Miniconda = Python + conda

Instalador de Anaconda = Python + conda+ metapaquete anaconda

meta Python pkg anaconda= alrededor de 160 paquetes de Python para uso diario en ciencia de datos

Instalador Anaconda = instalador Miniconda + conda install anaconda

Detalle

  1. conda es un administrador de Python y un administrador de entorno, lo que hace posible

    • instalar paquete con conda install flake8
    • crear un entorno con cualquier versión de Python con conda create -n myenv python=3.6
  2. Instalador Miniconda = Python + conda

    conda, el administrador de paquetes y el administrador de entorno, es un paquete de Python. Entonces Python está instalado. Causa Conda distribuir intérprete de Python con sus propias bibliotecas / dependencias, pero no los ya existentes en su sistema operativo, otras dependencias mínimas como openssl, ncurses, sqlite, etc están instalados también.

    Básicamente, Miniconda es justo conday sus dependencias mínimas . Y el entorno donde condaestá instalado es el entorno "base", que anteriormente se denominaba entorno "raíz".

  3. Instalador de Anaconda = Python + conda+ metapaqueteanaconda

  4. paquete meta Python anaconda= alrededor de 160 paquetes Python para uso diario en ciencia de datos

    Los metapaquetes son paquetes que NO contienen softwares reales y simplemente dependen de otros paquetes para ser instalados.

    Descargue un anacondametapaquete de Anaconda Cloud y extraiga el contenido del mismo. Los más de 160 paquetes que se instalarán se enumeran en 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
            # ...

    Los paquetes preinstalados de meta pkg anacondason principalmente para web scraping y data science. Como requests, beautifulsoup, numpy, nltk, etc.

    Si tiene un Miniconda instalado, conda install anacondalo hará como una instalación de Anaconda, excepto que los nombres de las carpetas de instalación son diferentes.

  5. Miniconda2 vs Miniconda. Anaconda2 vs Anaconda.

    2significa que el intérprete de Python incluido para condael entorno "base" es Python 2, pero no Python 3.

Simba
fuente
20

Miniconda le ofrece el propio intérprete de Python, junto con una herramienta de línea de comandos llamada conda que funciona como un administrador de paquetes multiplataforma orientado a los paquetes de Python, similar en espíritu a las herramientas apt o yum con las que los usuarios de Linux pueden estar familiarizados.

Anaconda incluye Python y conda, y además incluye un conjunto de otros paquetes preinstalados orientados a la informática científica. Debido al tamaño de este paquete, espere que la instalación consuma varios gigabytes de espacio en disco.

Fuente: Manual de ciencia de datos de Python de Jake VanderPlas

Bonifacio2
fuente
9

El 2en Anaconda2medios que la versión principal de Python 2.x será más que el 3.x instalado en Anaconda3. La versión actual tiene Python 2.7.13.

El 4.4.0.1es el número de versión de Anaconda. La versión anunciada actual es 4.4.0y supongo que .1es una versión menor o para otro uso similar. Las versiones de Windows, que uso, solo dicen 4.4.0en el nombre del archivo.

Otros ahora han explicado la diferencia entre Anaconda y Miniconda, así que me saltearé eso.

Rory Daulton
fuente
3

Anaconda es una instalación muy grande ~ 2 GB y es más útil para aquellos usuarios que no están familiarizados con la instalación de módulos o paquetes con otros administradores de paquetes.

Anaconda parece promocionarse como la administradora oficial de paquetes de Jupyter. No es. Anaconda agrupa Jupyter, R, python y muchos paquetes con su instalación.

Anaconda no es necesario para instalar Jupyter Lab o el kernel R. Hay mucha información disponible en otros lugares para instalar Jupyter Lab o Notebooks. También hay mucha información en otro lugar para instalar R studio. A continuación se muestra cómo instalar el kernel R directamente desde R Studio:

Para instalar el kernel R, sin Anaconda, inicie R Studio. En la ventana de terminal R ingrese estos tres comandos:

install.packages("devtools")
devtools::install_github("IRkernel/IRkernel")
IRkernel::installspec()

Hecho. La próxima vez que se abra Jupyter, el kernel R estará disponible y disponible.

gris
fuente
2

Tanto Anaconda como Miniconda usan el administrador de paquetes de conda . Sin embargo, la principal diferencia entre Anaconda y Miniconda es que

La distribución Anaconda viene precargada con todos los paquetes, mientras que la distribución miniconda es solo el sistema de administración sin ningún paquete precargado. Si uno usa miniconda, tiene que descargar paquetes individuales y bibliotecas por separado.

Personalmente uso la distribución Anaconda, ya que realmente no tengo que preocuparme mucho por las instalaciones de paquetes individuales.

Una desventaja de miniconda es que instalar cada paquete individual puede llevar mucho tiempo . En comparación con eso, instalar y usar Anaconda lleva mucho menos tiempo.

Sin embargo, hay algunos paquetes en anaconda (QtConsole, Glueviz, Orange3 ) que nunca he tenido que usar. Ni siquiera sé su propósito. Entonces, una desventaja de la anaconda es que ocupa más espacio del necesario.

Adhiraj Chattopadhyay
fuente
3
Esta respuesta no agrega ninguna información nueva que no estaba ya en la respuesta de Alexander .
merv