2016-01-20 29 views
5

Od dłuższego czasu zajmowałem się uczeniem maszynowym przy użyciu programu Matlab, a ostatnio przełączyłem się na Pythona, a do instalacji niektórych pakietów użyto jego menedżera pakietów i pomyślnie zainstalowałem wiele pakietów. Kilka dni temu zacząłem używać conda i wszystkie moje poprzednio zainstalowane pakiety są nadpisywane.Użyj pip lub conda do zarządzania pakietami?

Naprawdę chcę poznać różnicę między pip i conda, a co się stanie, jeśli użyję pip do instalowania pakietów zamiast conda?

Odpowiedz

2

Mam nadzieję, że ktoś bardziej kompetentny może się rozwinąć, ale wygląda na to, że Conda to narzędzie do wdrażania nie kompatybilne z PIP, zarówno dla Pythona, jak i dla narzędzi i pakietów innych niż Python. Conda obsługuje własną wirtualną instalację Pythona i pakietów, a także nie-pythonowe zależności.

PIP jest z kolei aplikacją stosowaną w Pythonie; nie zna Conda, a Conda nie zna PIP.

Znając powyższe, sensowne byłoby, aby Conda nie był świadomy wcześniej wdrożonych pakietów PIP, ponieważ nie są one kompatybilne.

Na szczęście, ponieważ oba systemy są rozdzielone, powinieneś być w stanie ożywić swoje środowisko PIP, jeśli zdecydujesz, że Conda nie jest warty przejścia. W przeciwnym razie, można spróbować instalację matlib na Conda naśladować to, co miał na konfigurację PIP:

Conda zainstalować -C https://conda.anaconda.org/ioos matlab_kernel

Dodatkowa lektura:

What is the difference between pip and conda?

https://conda.anaconda.org/menpo/channel/matlab

2

pip i conda mają wspólne punkty i różnice. Trudno jest wyjaśnić lepiej niż to, co zrobił tutaj Jake VanderPlas: https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/

Najlepiej byłoby, gdybyś wyczyścił swoje wcześniejsze pakiety z zainstalowanym pakietem i polegał tylko na conda. Jeśli nie jest to możliwe ze względu na niedostępność pakietów w conda, można zainstalować pip w conda, a następnie użyć conda install pip. (z powyższego linku).

2

naprawdę chcę znać różnicę między PIP i Conda

Zobacz What is the difference between pip and conda?

i co się dzieje, jeśli mogę użyć pip instalowania pakietów zamiast Conda?

Pip ogólnie (z wyjątkiem użycia virtualenv) instaluje pakiety dla całego systemu (jako root/może jako administrator) lub dla użytkownika. Conda instaluje pakiety w swoim własnym małym katalogu world /, gdzie trzeba je aktywować, nadpisując pakiety pip, jak już zauważyłeś.

Jako rozwiązanie, można instalować pakiety za pośrednictwem systemu jako pierwsze, drugie pips i trzecie.

Używaj pakietu systemowego, jeśli to wszystko, co jest potrzebne. Jeśli jest to zbyt stary plik, możesz użyć instalacji pip.

Jeśli potrzebujesz konkretnego pakietu, może tylko do jednego projektu, lub jeśli chcesz udostępnić projekt komuś innemu, bardziej odpowiednie może się wydawać. Zobacz także What is the advantage of Pip over Anaconda?.

Powiązane problemy