I recently discovered Conda after I was having trouble installing SciPy, specifically on a Heroku app that I am developing.
With Conda you create environments, very
Virtual Environments and pip
I will add that creating and removing conda environments is simple with Anaconda.
> conda create --name python=
> conda remove --name --all
In an activated environment, install packages via conda
or pip
:
(envname)> conda install
(envname)> pip install
These environments are strongly tied to conda's pip-like package management, so it is simple to create environments and install both Python and non-Python packages.
Jupyter
In addition, installing ipykernel in an environment adds a new listing in the Kernels dropdown menu of Jupyter notebooks, extending reproducible environments to notebooks. As of Anaconda 4.1, nbextensions were added, adding extensions to notebooks more easily.
Reliability
In my experience, conda is faster and more reliable at installing large libraries such as numpy
and pandas
. Moreover, if you wish to transfer your the preserved state of an environment, you can do so by sharing or cloning an env.