Anaconda vs miniconda


203

Nel repository Anaconda , ci sono due tipi di programmi di installazione:

" Anaconda installers " e " Miniconda installers ".

Quali sono le loro differenze?

Inoltre, per un file di installazione Anaconda2-4.4.0.1-Linux-ppc64le.sh, cosa significa 2-4.4.0.1?

Risposte:


135

La differenza è che miniconda sta solo spedendo il sistema di gestione dei repository. Quindi quando lo installi c'è solo il sistema di gestione senza pacchetti. Considerando che con Anaconda, è come una distribuzione con alcuni pacchetti integrati.

Come con qualsiasi distribuzione Linux, ci sono alcune versioni che raggruppano molti aggiornamenti per i pacchetti inclusi. Ecco perché c'è una differenza nella numerazione delle versioni. Se decidi solo di aggiornare Anaconda, stai aggiornando un intero sistema.


3
Miniconda non sta semplicemente spedendo il sistema di gestione dei repository. Python viene fornito con esso e anche alcuni altri pacchetti. Puoi verificare eseguendolo conda listsubito dopo aver installato Miniconda.
Michael,

@Michael è sicuro che crea un rootambiente e fingi di avere qualcosa.
Y0da

1
@Michael mi dispiace errore di battitura:
antepone

324

Secondo i documenti originali (il link ora è morto):

Scegli Anaconda se:

  • Sono nuovi per conda o Python
  • Come la comodità di avere Python e oltre 150 pacchetti scientifici installati automaticamente in una volta
  • Avere il tempo e lo spazio su disco (pochi minuti e 3 GB) e / o
  • Non vuoi installare ognuno dei pacchetti che vuoi usare singolarmente.

Scegli Miniconda se:

  • Non preoccuparti di installare ciascuno dei pacchetti che vuoi usare singolarmente.
  • Non è necessario tempo o spazio su disco per installare oltre 150 pacchetti contemporaneamente e / o
  • Voglio solo un rapido accesso a Python e ai comandi conda e desidero ordinare gli altri programmi in un secondo momento.

Uso Miniconda da solo. Anaconda è gonfia. Molti dei pacchetti non vengono mai utilizzati e potrebbero essere facilmente installati se e quando necessario.

Si noti che Conda è il gestore dei pacchetti (ad es. conda listVisualizza tutti i pacchetti installati nell'ambiente), mentre Anaconda e Miniconda sono distribuzioni. Una distribuzione software è una raccolta di pacchetti, preconfigurati e preconfigurati, che possono essere installati e utilizzati su un sistema. Un gestore pacchetti è uno strumento che automatizza il processo di installazione, aggiornamento e rimozione di pacchetti.

Anaconda è una distribuzione completa del software centrale nell'ecosistema PyData e include Python stesso insieme ai binari per diverse centinaia di progetti open source di terze parti. Miniconda è essenzialmente un programma di installazione per un ambiente conda vuoto, contenente solo Conda, le sue dipendenze e Python. Fonte .

Una volta installato Conda, è possibile installare da zero qualsiasi pacchetto sia necessario insieme a qualsiasi versione desiderata di Python.

2-4.4.0.1è il numero di versione per il pacchetto di installazione di Anaconda. Stranamente, non è elencato nei loro vecchi elenchi di pacchetti .

Ad aprile 2016, il versioning di Anaconda è passato da 2.5 a 4.0 per evitare confusione con le versioni 2 e 3. di Python. La versione 4.0 includeva Anaconda Navigator.

Le note sulla versione per le versioni successive sono disponibili qui .


Come domanda di follow-up. Dato condache l'installazione dei pacchetti richiede così tanto tempo e che anacondaviene fornita con tutti questi pacchetti extra, non anacondati darebbe "un accesso più veloce a Python" e altri pacchetti rispetto a miniconda? Sto usando in minicondaquesto momento, ma cavolo è così lento.
mimoralea,

Le domande di follow-up devono sempre essere inserite come una nuova domanda. Una volta installati tutti i pacchetti con conda, è necessario aggiornare costantemente i pacchetti che non sono necessari, a mio avviso è più una seccatura della semplice installazione e aggiornamento dei pacchetti che si utilizzano. Inoltre, la miniconda non è lenta. In effetti, l'installazione di un sottoinsieme di pacchetti è più veloce dell'installazione di tutto.
Alexander,

1
2non fa parte della versione, fa parte del nome di Anaconda: In Anaconda2-4.4.0.1-Linux-ppc64le.shtroviamo la versione 4.4.0.1 di Anaconda2 (per Linux che gira su Little Endian 64-bit PowerPC).
David Jones,

Ma non riesco a capire se l'anaconda e / o la miniconda sono consentite anche per uso commerciale? Anaconda offre una "edizione individuale" e una "edizione team" ma nella licenza non riesco a leggere che l '"edizione individuale" è vietata per l'uso in ambienti di produzione?
la mano di NOD il

22

Breve

conda è sia uno strumento da riga di comando, sia un pacchetto python.

Programma di installazione di Miniconda = Python + conda

Anaconda installer = Python + conda+ meta pacchetto anaconda

anacondapkgon meta Python = circa 160 pkgs Python per l'uso quotidiano nella scienza dei dati

Anaconda installer = Miniconda installer + conda install anaconda

Dettaglio

  1. conda è un gestore python e un gestore ambiente, il che lo rende possibile

    • installa pacchetto con conda install flake8
    • creare un ambiente con qualsiasi versione di Python con conda create -n myenv python=3.6
  2. Programma di installazione di Miniconda = Python + conda

    conda, il gestore dei pacchetti e il gestore dell'ambiente, è un pacchetto Python. Quindi Python è installato. Causa Conda distribuire interprete Python con le proprie librerie / dipendenze, ma non quelli già esistenti sul vostro sistema operativo, altre dipendenze minime piace openssl, ncurses, sqlite, ecc sono installati pure.

    Fondamentalmente, Miniconda è giusta condae le sue dipendenze minime . E l'ambiente in cui condaè installato è l'ambiente "base", che in precedenza viene chiamato ambiente "root".

  3. Anaconda installer = Python + conda+ meta pacchettoanaconda

  4. pacchetto meta Python anaconda= circa 160 pacchetti Python per l'uso quotidiano nella scienza dei dati

    I meta pacchetti sono pacchetti che NON contengono software reali e dipendono semplicemente dagli altri pacchetti da installare.

    Scarica un anacondameta pacchetto da Anaconda Cloud ed estrai il contenuto da esso. Gli attuali 160+ pacchetti da installare sono elencati in 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
            # ...

    I pacchetti preinstallati da meta pkg anacondasono principalmente per il web scraping e la scienza dei dati. Come requests, beautifulsoup, numpy, nltk, etc.

    Se hai installato una Miniconda, conda install anacondasarà uguale a un'installazione Anaconda, tranne per il fatto che i nomi delle cartelle di installazione sono diversi.

  5. Miniconda2 vs Miniconda. Anaconda2 vs Anaconda.

    2significa che l'interprete Python in bundle per condanell'ambiente "base" è Python 2, ma non Python 3.


20

Miniconda ti offre lo stesso interprete Python, insieme a uno strumento da riga di comando chiamato conda che funziona come un gestore di pacchetti multipiattaforma orientato verso i pacchetti Python, simile nello spirito agli strumenti apt o yum con cui gli utenti Linux potrebbero avere familiarità.

Anaconda include sia Python che conda e raggruppa inoltre una suite di altri pacchetti preinstallati orientati al calcolo scientifico. A causa delle dimensioni di questo pacchetto, si prevede che l'installazione consumerà diversi gigabyte di spazio su disco.

Fonte: Manuale Python Data Science di Jake VanderPlas


9

Il 2nel Anaconda2significa che la versione principale di Python 2.x sarà piuttosto che il 3.x installato inAnaconda3 . La versione corrente ha Python 2.7.13.

Il 4.4.0.1è il numero di versione di Anaconda. La versione pubblicizzata corrente è 4.4.0e presumo che .1sia una versione minore o per altri usi simili. Le versioni di Windows, che uso, dicono semplicemente 4.4.0nel nome del file.

Altri hanno ora spiegato la differenza tra Anaconda e Miniconda, quindi la salterò.


3

Anaconda è un'installazione molto grande ~ 2 GB ed è molto utile per quegli utenti che non hanno familiarità con l'installazione di moduli o pacchetti con altri gestori di pacchetti.

Anaconda sembra promuoversi come gestore di pacchetti ufficiale di Jupyter. Non è. Anaconda raggruppa Jupyter, R, python e molti pacchetti con la sua installazione.

Anaconda non è necessario per installare Jupyter Lab o il kernel R. Esistono molte altre informazioni disponibili altrove per l'installazione di Jupyter Lab o Notebook. Ci sono anche molte altre informazioni altrove per l'installazione di R studio. Quanto segue mostra come installare il kernel R direttamente da R Studio:

Per installare il kernel R, senza Anaconda, avvia R Studio. Nella finestra del terminale R immettere questi tre comandi:

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

Fatto. Alla successiva apertura di Jupyter, il kernel R sarà disponibile e disponibile.


2

Sia Anaconda che Miniconda utilizzano il gestore pacchetti conda . La principale differenza tra Anaconda e Miniconda , tuttavia, è quella

La distribuzione Anaconda è precaricata con tutti i pacchetti mentre la distribuzione miniconda è solo il sistema di gestione senza alcun pacchetto precaricato. Se si utilizza miniconda, è necessario scaricare i singoli pacchetti e librerie separatamente.

Personalmente utilizzo la distribuzione Anaconda in quanto non devo preoccuparmi molto delle singole installazioni di pacchetti.

Uno svantaggio della miniconda è che l'installazione di ogni singolo pacchetto può richiedere molto tempo . Rispetto a quello che installa e usa Anaconda richiede molto meno tempo.

Tuttavia, ci sono alcuni pacchetti in anaconda (QtConsole, Glueviz, Orange3 ) che non ho mai dovuto usare. Non conosco nemmeno il loro scopo. Quindi uno svantaggio di anaconda è che occupa più spazio del necessario.


3
Questa risposta non aggiunge nuove informazioni che non erano già presenti nella risposta di Alexander .
Merv
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.