it-swarm.com.de

Wie aktualisiere ich Anaconda?

Ich habe Anaconda auf meinem Computer installiert und möchte sie aktualisieren. Im Navigator kann ich sehen, dass es mehrere einzelne Pakete gibt, die aktualisiert werden können, aber auch ein anaconda-Paket, das manchmal eine Versionsnummer hat und manchmal custom sagt. Wie gehe ich vor?

 enter image description here

158
IanSR

Was wollen 95% der Leute eigentlich?

In den meisten Fällen möchten Sie, wenn Sie sagen, dass Sie Anaconda aktualisieren möchten, den folgenden Befehl ausführen:

conda update --all

(Dies sollte jedoch vorangestellt von conda update -n root conda sein, damit Sie die neueste conda-Version installiert haben.)

Dadurch werden alle Pakete in der aktuellen Umgebung auf die neueste Version aktualisiert. Das Kleingedruckte besteht darin, dass möglicherweise eine ältere Version einiger Pakete verwendet wird, um Abhängigkeitsbeschränkungen zu erfüllen (oft ist dies nicht erforderlich, und wenn dies erforderlich ist) Paket-Plan-Löser wird sein Bestes tun, um die Auswirkungen zu minimieren).

Dies muss über die Befehlszeile ausgeführt werden. Der beste Weg, um dorthin zu gelangen, ist Anaconda Navigator, dann die Registerkarte "Umgebungen". Klicken Sie dann auf das Dreieck neben der Umgebung root und wählen Sie "Open Terminal" aus:

 Open terminal from Navigator

Dieser Vorgang aktualisiert nur die eine ausgewählte Umgebung (in diesem Fall die root-Umgebung). Wenn Sie andere Umgebungen haben, die Sie aktualisieren möchten, können Sie den oben beschriebenen Vorgang wiederholen. Klicken Sie jedoch zunächst auf die Umgebung. Wenn es ausgewählt ist, befindet sich rechts eine dreieckige Markierung (siehe Abbildung oben, Schritt 3). Sie können auch über die Befehlszeile den Umgebungsnamen (-n envname) oder den Pfad (-p /path/to/env) angeben, um beispielsweise Ihre dspyr-Umgebung aus dem Screenshot oben zu aktualisieren:

conda update -n dspyr --all

Aktualisieren Sie einzelne Pakete

Wenn Sie nur ein einzelnes Paket aktualisieren möchten, klicken Sie im Navigator einfach auf den blauen Pfeil oder die blaue Versionsnummer, z. Für astroid oder astropy im obigen Screenshot, werden diese Pakete für ein Upgrade gekennzeichnet. Wenn Sie fertig sind, müssen Sie auf die Schaltfläche "Übernehmen" klicken:

 Apply to update individual packages

Oder von der Kommandozeile aus:

conda update astroid astropy

Aktualisieren Sie nur die Pakete in der Standard-Anaconda-Distribution

Wenn Sie sich nicht für Paketversionen interessieren und nur "den neuesten Satz aller Pakete in der Standard-Anaconda-Distribution, solange sie zusammenarbeiten" wollen, sollten Sie diese Gist betrachten .

Warum ist ein Update des Anaconda-Pakets fast immer eine schlechte Idee?

In den meisten Fällen führt die Aktualisierung des Anaconda-Pakets in der Paketliste zu einem überraschenden Ergebnis: Sie können tatsächlich viele Pakete downgraden (tatsächlich ist dies wahrscheinlich, wenn die Version als custom angezeigt wird). Die Gist oben liefert Details.

Nutzen Sie Conda-Umgebungen

Ihre root-Umgebung ist wahrscheinlich kein guter Ort, um einen exakten Satz von Paketen zu versuchen und zu verwalten: Es wird ein dynamischer Arbeitsbereich mit neuen Paketen und zufällig aktualisierten Paketen sein. Wenn Sie einen genauen Satz von Paketen benötigen, erstellen Sie eine Conda-Umgebung, in der sie gespeichert werden sollen. Dank des Conda-Paketcaches und der Art, wie Dateiverknüpfungen verwendet werden, ist dies normalerweise i) schnell und ii) verbraucht sehr wenig zusätzlichen Festplattenspeicher. Z.B.

conda create -n myspecialenv -c bioconda -c conda-forge python=3.5 pandas beautifulsoup seaborn nltk

Die conda Dokumentation enthält weitere Details und Beispiele.

pip, PyPI und Setuptools?

Nichts davon hilft bei der Aktualisierung von Paketen, die von PyPI über pip installiert wurden, oder von Paketen, die mit python setup.py install installiert wurden. conda list gibt Ihnen einige Hinweise zu den Pip-basierten Python-Paketen, die Sie in einer Umgebung haben, aber es wird nichts Besonderes tun, um sie zu aktualisieren.

Kommerzielle Nutzung von Anaconda oder Anaconda Enterprise

Es ist ziemlich genau dieselbe Geschichte, mit der Ausnahme, dass Sie die root-Umgebung möglicherweise nicht aktualisieren können, wenn sie von einer anderen Person installiert wurde (sagen Sie zu /opt/anaconda/latest). Wenn Sie die von Ihnen verwendeten Umgebungen nicht aktualisieren können, sollten Sie in der Lage sein, zu klonen und dann zu aktualisieren:

conda create -n myenv --clone root
conda update -n myenv --all
285
IanSR

Wenn Sie versuchen, Ihre Anaconda-Version auf eine neue zu aktualisieren, werden Sie feststellen, dass die Ausführung des neuen Installationsprogramms nicht funktionieren würde, da das Installationsverzeichnis nicht leer ist.

Sie sollten daher conda verwenden, um ein Upgrade durchzuführen, wie in den offiziellen Dokumenten beschrieben:

conda update conda
conda update anaconda


Wenn Sie unter Windows eine Installation für alle Benutzer vorgenommen haben, kann es erforderlich sein, eine Anaconda-Eingabeaufforderung mit Administratorrechten auszuführen.

Simply right click on Anaconda Prompt in the start menu

Dies verhindert den Fehler:

FEHLER conda.core.link:_execute(502): Beim Deinstallieren des Pakets 'defaults :: conda-4.5.4-py36_0' ..__ ist ein Fehler aufgetreten. PermissionError (13, 'Zugriff verweigert')

62
Cardin

Öffne "command or conda Prompt" und führe aus:

conda update conda
conda update anaconda

Es ist eine gute Idee, beide Befehle zweimal (nacheinander) auszuführen, um sicherzustellen, dass alle Basisdateien aktualisiert werden.

Dies sollte Sie auf die neuesten "Releases" zurückführen, die Pakete enthalten, die von den Mitarbeitern von Continuum ausgewählt wurden, um gut zusammenzuarbeiten.

Wenn Sie möchten, dass die letzte Version jedes Pakets ausgeführt wird (dies kann zu einer unstable-Umgebung) führen:

conda update --all 

Hoffe das hilft.

Quellen:

33
H.Latte

Wenn Sie Probleme haben, z. von 3.3.x bis 4.x (conda update conda "funktioniert nicht", um zur nächsten Version zu gelangen)

conda install conda=4.0 (or conda install anaconda=4.0)

https://www.anaconda.com/blog/developer-blog/anaconda-4-release/

6
InLaw

Hier ist die beste Praxis (in meiner bescheidenen Erfahrung). Durch Auswahl dieser vier -Pakete werden auch alle anderen Abhängigkeiten auf die entsprechenden Versionen aktualisiert, sodass Sie Ihre Umgebung konsistent halten. Letzteres ist ein häufiges Problem, das andere in früheren Antworten geäußert haben. Diese Lösung benötigt kein Terminal.

 Updating and upgrading Anaconda3 or Anaconda2 best practice

3
Full Array

Öffnen Sie auf einem Mac das Terminal und führen Sie die folgenden zwei Befehle aus.

conda update conda
conda update anaconda

stellen Sie sicher, dass Sie jeden Befehl mehrmals ausführen, um auf die aktuelle Version zu aktualisieren.

2
Ajay Sant

wenn Sie Windows 10 für diejenigen verwenden, die gerade neu im Spiel sind (wie ich), in denen Python wirklich mit dem Besuch der Bibliothek (des Codes) vergleichbar ist, wird im Folgenden alles aktualisiert und es werden einige neue Pakete installiert, einschließlich eines Python-Updates (für mich) war 3.7.3):

versuchen Sie bei der Shell Folgendes (stellen Sie sicher, dass Sie den Installationsort Ihrer Anaconda3-Daten ändern). Es dauert einige Zeit, um alles zu aktualisieren.

conda update --prefix X:\XXXXData\Anaconda3 anaconda

1
D Jacobson
conda create -n py37 -c anaconda anaconda=5.3.1
conda env export -n py37 --file env.yaml

suchen Sie die Datei env.yaml in C:\Windows\System32 und führen Sie den Befehl cmd als Administrator aus

conda env update -n root -f env.yaml  

dann klappt es!

0
leeningzzu

Die Antwort des @InLaw war ziemlich genau. Um das zu ergänzen, können Sie, wenn Sie python2 als Standard verwenden, mit einem Aliase zu python3 wechseln. 

Geben Sie einfach $ alias python=python3 ein.

$ unalias python rückgängig machen

0
Lucas Coelho