2016-01-20 1 views
5

Я занимаюсь машинным обучением довольно долгое время с использованием Matlab и недавно переключился на python и для установки определенных пакетов использовал свой пакетный диспетчер пакетов и успешно установил множество пакетов. Несколько дней назад я начал использовать conda, и все мои ранее установленные пакеты становятся переопределенными.Используйте pip или conda для управления пакетами?

Я действительно хочу знать разницу между pip и conda, и что произойдет, если я буду использовать pip для установки пакетов вместо conda?

ответ

2

Надеюсь, что кто-то более осведомленный может расширить, но похоже, что Conda - это инструмент для развертывания, не совместимый с PIP, как для инструментов Python, так и для не-python. Conda обрабатывает свою собственную виртуальную установку Python и пакетов, а также не-python-зависимостей.

PIP, с другой стороны, является утилитой развертывания, специфичной для Python; он не знает о Конде, и Конда не знает о PIP.

Зная вышеизложенное, было бы разумно, что Conda не будет знать о ваших ранее развернутых пакетах PIP, поскольку эти два несовместимы.

К счастью, поскольку две системы отделены друг от друга, вы должны восстановить свою среду PIP, если решите, что Conda не стоит переключать. В противном случае, вы можете попробовать установку matlib на Конда, чтобы имитировать то, что вы имели установку на PIP:

Конда установки -c https://conda.anaconda.org/ioos matlab_kernel

Дополнительное чтение:

What is the difference between pip and conda?

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

2

пип и конда имеют общие точки и различия. Трудно объяснить, чем это сделал Джейк ВандерПлас: https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/

Для вашего удобства, было бы лучше всего стереть ваши предыдущие пакеты с установленным пакетом и полагаться только на conda. Если это невозможно из-за отсутствия пакетов в conda, вы можете установить pip в conda, а затем использовать conda install pip. (по ссылке выше).

2

Я действительно хочу знать разницу между Пипа и Конда

См What is the difference between pip and conda?

и что произойдет, если я использую пип для установки пакетов вместо Конда?

В общем случае (за исключением использования virtualenv) пакеты устанавливаются либо для всей системы (как root /, возможно, для администратора), либо для пользователя. Конда устанавливает пакеты в свой собственный маленький мир/каталог, где их необходимо активировать, переопределяя пакеты пакетов, как вы уже отметили.

В качестве решения вы можете установить пакеты через свою систему сначала, второй и третий.

Так что используйте системный пакет, если это все, что необходимо. Если это слишком старый f.ex., вы можете использовать установку pip.

Если вам нужен конкретный пакет, возможно, только для одного проекта, или если вам нужно поделиться проектом с кем-то другим, conda кажется более подходящим. См. Также What is the advantage of Pip over Anaconda?.

 Смежные вопросы

  • Нет связанных вопросов^_^