Managing virtual environment in Anaconda


A virtual environment is an isolated copy of your environment that maintains its own version of the language, packages, and versions. It can help in avoiding version conflicts and dependency issues among projects. Anaconda provides a convenient way to manage packages and different environments needed for data science projects. It also helps in creating and managing virtual environments which makes working on different projects much easier. It comes with conda, python, R and over 150 scientific packages.

Conda is the package and environment manager. It is similar to pip, which is the default package manager for python libraries. Conda is more focused on data science packages. One thing to consider is that all the Python packages are not available in anaconda distribution and if you want to install those packages you can use pip for it.

Commands for managing environments

  • conda create -n env_name

Here, -n is an indicator for the name. It will create an environment named env_name. If we want to create an environment with a specific python version, we can use

conda create -n env_name python=3.0

  • conda env list

It will list all the environments present in your anaconda setup. Current environment will be marked by an asterisk(*)

  • conda activate env_name

It will activate the mentioned environment. If we install any package in this environment, it will be available only in this environment.

  • conda list

It will list all the packages installed in the current environment. If you want to check for some other environment that is not activated, you can use

conda list -n env_name

To check if a specific package, we can use conda list -n env_name package_name

  • conda install package_name

To install any particular package_name. We can also install multiple packages at a time by using

conda install package_name1, package_name2, package_name3

We can also specify any particular  version to install using

conda install package_name=version_number

  • conda remove package_name

To remove any package from the current environment

  • conda update package_name

It will update the package in the current environment. If we want to update all the packages, we can use

conda update --all

  • conda search *string*

If we don’t know the exact name for any package, then we can search for it. It will give you all the related package names.

  • conda deactivate

It will deactivate the current environment.

  • conda env remove -n env_name

It will remove the mentioned environment.

  • pip freeze > requirements.txt

It saves a list of all the installed packages in the requirements.txt file. It can be used to save the requirements of your projects for the future. 

  • pip install -r requirements.txt

It will install all the packages and versions mentioned in the requirements.txt. It can be useful in running others or past projects.

It is a good practice to create separate environments for different projects and work in it. It might seem a little bit confusing in the beginning but with practice, it will become much easier. 

I am doing Udacity deep learning nanodegree program and trying to maintain notes in the blog format. Also, you can find these details and other commands on the Anaconda official document page.


Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: