Anaconda gegen Miniconda

199

Im Anaconda-Repository gibt es zwei Arten von Installationsprogrammen:

" Anaconda-Installer " und " Miniconda-Installer ".

Was sind ihre Unterschiede?

Anaconda2-4.4.0.1-Linux-ppc64le.shWofür steht außerdem eine Installationsdatei 2-4.4.0.1?

user288609
quelle

Antworten:

132

Der Unterschied besteht darin, dass Miniconda nur das Repository-Verwaltungssystem ausliefert. Wenn Sie es installieren, gibt es nur das Managementsystem ohne Pakete. Während es bei Anaconda wie eine Distribution mit einigen eingebauten Paketen ist.

Wie bei jeder Linux-Distribution gibt es einige Releases, die viele Updates für die enthaltenen Pakete enthalten. Deshalb gibt es einen Unterschied in der Versionsnummerierung. Wenn Sie sich nur für ein Upgrade von Anaconda entscheiden, aktualisieren Sie ein ganzes System.

Y0da
quelle
3
Miniconda liefert nicht nur das Repository-Verwaltungssystem aus. Python wird mitgeliefert und einige andere Pakete auch. Sie können dies überprüfen, indem Sie conda listdirekt nach der Installation von Miniconda ausführen.
Michael
@ Michael sicher, dass es eine rootUmgebung schafft und es mit Sachen vorgibt.
Y0da
1
@ Michael Entschuldigung Tippfehler: Voranstellen
Y0da
324

Gemäß den Originaldokumenten (Link ist jetzt tot):

Wählen Sie Anaconda, wenn Sie:

  • Sind neu in Conda oder Python
  • Wie die Bequemlichkeit, Python und über 150 wissenschaftliche Pakete automatisch gleichzeitig installieren zu lassen
  • Haben Sie die Zeit und Speicherplatz (einige Minuten und 3 GB) und / oder
  • Sie möchten nicht jedes der Pakete, die Sie verwenden möchten, einzeln installieren.

Wählen Sie Miniconda, wenn Sie:

  • Es macht nichts aus, jedes der Pakete, die Sie verwenden möchten, einzeln zu installieren.
  • Sie haben keine Zeit oder keinen Speicherplatz, um mehr als 150 Pakete gleichzeitig zu installieren, und / oder
  • Sie möchten nur schnell auf Python und die conda-Befehle zugreifen und die anderen Programme später sortieren.

Ich benutze Miniconda selbst. Anaconda ist aufgebläht. Viele der Pakete werden nie verwendet und können bei Bedarf problemlos installiert werden.

Beachten Sie, dass Conda der Paketmanager ist (z. B. conda listalle in der Umgebung installierten Pakete anzeigt), während Anaconda und Miniconda Distributionen sind. Eine Softwareverteilung ist eine Sammlung vorgefertigter und vorkonfigurierter Pakete, die auf einem System installiert und verwendet werden können. Ein Paketmanager ist ein Tool, das das Installieren, Aktualisieren und Entfernen von Paketen automatisiert.

Anaconda ist eine vollständige Distribution der zentralen Software im PyData-Ökosystem und enthält Python selbst sowie die Binärdateien für mehrere hundert Open-Source-Projekte von Drittanbietern. Miniconda ist im Wesentlichen ein Installationsprogramm für eine leere Conda-Umgebung, die nur Conda, seine Abhängigkeiten und Python enthält. Quelle .

Sobald Conda installiert ist, können Sie jedes benötigte Paket zusammen mit jeder gewünschten Version von Python von Grund auf neu installieren.

2-4.4.0.1ist die Versionsnummer für Ihr Anaconda-Installationspaket. Seltsamerweise ist es nicht in ihren alten Paketlisten aufgeführt .

Im April 2016 stieg die Anaconda-Versionierung von 2,5 auf 4,0, um Verwechslungen mit den Python-Versionen 2 und 3 zu vermeiden. Version 4.0 enthielt den Anaconda Navigator.

Versionshinweise für nachfolgende Versionen finden Sie hier .

Alexander
quelle
Als Folgefrage. Angesichts condader Tatsache , dass die Installation von Paketen so lange dauert und dies anacondamit all diesen zusätzlichen Paketen einhergeht, würden Sie dann nicht anacondaeinen "schnelleren Zugriff auf Python" und andere Pakete erhalten als miniconda? Ich benutze minicondagerade, aber meine Güte, es ist so langsam.
Mimoralea
Folgefragen sollten immer als neue Frage veröffentlicht werden. Sobald Sie alle Pakete mit conda installiert haben, müssen Sie ständig benötigte Pakete ständig aktualisieren, was meiner Ansicht nach mehr Aufwand bedeutet als nur die Installation und Aktualisierung der verwendeten Pakete. Auch Miniconda ist nicht langsam. Tatsächlich ist die Installation einer Teilmenge von Paketen schneller als die Installation von allem.
Alexander
1
2ist nicht Teil der Version, sondern Teil des Namens von Anaconda: In Anaconda2-4.4.0.1-Linux-ppc64le.shVersion 4.4.0.1 von Anaconda2 (für Linux, das auf Little Endian 64-Bit PowerPC ausgeführt wird).
David Jones
Aber ich kann nicht herausfinden, ob Anakonda und / oder Miniconda auch für den kommerziellen Gebrauch zugelassen sind? Anaconda bietet eine "Einzelausgabe" und eine "Teamausgabe" an, aber in der Lizenz kann ich nicht lesen, dass die "Einzelausgabe" für die Verwendung in Produktionsumgebungen verboten ist.
die Hand von NOD
22

Kurz

conda ist sowohl ein Befehlszeilenprogramm als auch ein Python-Paket.

Miniconda-Installationsprogramm = Python + conda

Anaconda installer = Python + conda+ Metapaket anaconda

meta Python pkg anaconda= ca. 160 Python pkgs für den täglichen Gebrauch in der Datenwissenschaft

Anaconda Installer = Miniconda Installer + conda install anaconda

Detail

  1. conda ist ein Python-Manager und ein Umgebungsmanager, was dies ermöglicht

    • Paket installieren mit conda install flake8
    • Erstellen Sie eine Umgebung mit einer beliebigen Version von Python mit conda create -n myenv python=3.6
  2. Miniconda-Installationsprogramm = Python + conda

    conda, der Paketmanager und Umgebungsmanager, ist ein Python-Paket. Also ist Python installiert. Ursache Conda Python - Interpreter mit seinen eigenen Bibliotheken / Abhängigkeiten verteilen , aber nicht die bestehenden auf Ihrem Betriebssystem, andere minimale Abhängigkeiten wie openssl, ncurses, sqliteusw. sind ebenfalls installiert.

    Grundsätzlich ist Miniconda gerecht condaund seine minimalen Abhängigkeiten . Die Umgebung, in der condainstalliert wird, ist die "Basis" -Umgebung, die zuvor als "Root" -Umgebung bezeichnet wurde.

  3. Anaconda installer = Python + conda+ Metapaketanaconda

  4. Meta-Python-Paket anaconda= ca. 160 Python-Pakete für den täglichen Gebrauch in der Datenwissenschaft

    Meta-Pakete sind Pakete, die KEINE aktuelle Software enthalten und einfach von anderen zu installierenden Paketen abhängen.

    Laden Sie ein anacondaMetapaket aus der Anaconda Cloud herunter und extrahieren Sie den Inhalt daraus. Die aktuell zu installierenden 160+ Pakete sind in aufgeführt 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
            # ...

    Die vorinstallierten Pakete von meta pkg anacondasind hauptsächlich für Web Scraping und Data Science gedacht . Wie requests, beautifulsoup, numpy, nltketc.

    Wenn Sie eine Miniconda installiert haben, entspricht conda install anacondadiese einer Anaconda-Installation, außer dass die Namen der Installationsordner unterschiedlich sind.

  5. Miniconda2 gegen Miniconda. Anaconda2 gegen Anaconda.

    2bedeutet, dass der mitgelieferte Python-Interpreter für condadie "Basis" -Umgebung Python 2 ist, nicht jedoch Python 3.

Simba
quelle
20

Miniconda bietet Ihnen den Python-Interpreter selbst sowie ein Befehlszeilentool namens conda, das als plattformübergreifender Paketmanager für Python-Pakete fungiert und den apt- oder yum-Tools ähnelt, mit denen Linux-Benutzer möglicherweise vertraut sind.

Anaconda enthält sowohl Python als auch Conda und bündelt zusätzlich eine Reihe anderer vorinstallierter Pakete, die auf wissenschaftliches Rechnen ausgerichtet sind. Erwarten Sie aufgrund der Größe dieses Bundles, dass die Installation mehrere Gigabyte Festplattenspeicher belegt.

Quelle: Jake VanderPlas Python Data Science Handbook

Bonifacio2
quelle
9

Das 2in Anaconda2bedeutet, dass die Hauptversion von Python 2.x und nicht die in installierte Version 3.x ist Anaconda3. Die aktuelle Version enthält Python 2.7.13.

Das 4.4.0.1ist die Versionsnummer von Anaconda. Die aktuell beworbene Version ist 4.4.0und ich gehe davon aus, dass .1es sich um eine Nebenversion oder eine andere ähnliche Verwendung handelt. Die Windows-Versionen, die ich verwende, sagen einfach 4.4.0im Dateinamen.

Andere haben jetzt den Unterschied zwischen Anaconda und Miniconda erklärt, also werde ich das überspringen.

Rory Daulton
quelle
3

Anaconda ist eine sehr große Installation mit ca. 2 GB und am nützlichsten für Benutzer, die mit der Installation von Modulen oder Paketen mit anderen Paketmanagern nicht vertraut sind.

Anaconda scheint sich als offizieller Paketmanager von Jupyter zu promoten. Es ist nicht. Anaconda bündelt Jupyter, R, Python und viele Pakete mit seiner Installation.

Anaconda ist für die Installation von Jupyter Lab oder des R-Kernels nicht erforderlich. An anderer Stelle stehen zahlreiche Informationen zur Installation von Jupyter Lab oder Notebooks zur Verfügung. Es gibt auch an anderer Stelle viele Informationen zur Installation von R Studio. Im Folgenden wird gezeigt, wie Sie den R-Kernel direkt in R Studio installieren:

Starten Sie R Studio, um den R-Kernel ohne Anaconda zu installieren. Geben Sie im R-Terminal-Fenster die folgenden drei Befehle ein:

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

Getan. Beim nächsten Öffnen von Jupyter ist der R-Kernel verfügbar und verfügbar.

Grau
quelle
2

Sowohl Anaconda als auch Miniconda verwenden den Conda- Paketmanager. Der Hauptunterschied zwischen Anaconda und Miniconda ist jedoch der folgende

Die Anaconda-Distribution ist mit allen Paketen vorinstalliert, während die Miniconda-Distribution nur das Managementsystem ohne vorinstallierte Pakete ist. Wenn man Miniconda verwendet, muss man einzelne Pakete und Bibliotheken separat herunterladen.

Ich persönlich verwende die Anaconda-Distribution, da ich mich nicht wirklich um einzelne Paketinstallationen kümmern muss.

Ein Nachteil von Miniconda ist, dass die Installation jedes einzelnen Pakets viel Zeit in Anspruch nehmen kann . Im Vergleich dazu nimmt die Installation und Verwendung von Anaconda viel weniger Zeit in Anspruch.

Es gibt jedoch einige Pakete in Anaconda (QtConsole, Glueviz, Orange3 ), die ich nie verwenden musste. Ich kenne nicht einmal ihren Zweck. Ein Nachteil von Anaconda ist also, dass sie mehr Platz einnimmt als benötigt.

Adhiraj Chattopadhyay
quelle
3
Diese Antwort fügt keine neuen Informationen hinzu, die nicht bereits in Alexanders Antwort enthalten waren .
Merv