Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to add conda environment to jupyter lab

People also ask

Can I run conda on Jupyter Notebook?

Jupyter will be completely installed in the conda environment. Different versions of Jupyter can be used for different conda environments, but this option might be a bit of overkill. It is enough to include the kernel in the environment, which is the component wrapping Python which runs the code.

How do you use JupyterLab in Anaconda?

You can search for Anaconda Navigator via Spotlight on macOS ( Command + spacebar ), the Windows search function ( Windows Logo Key ) or opening a terminal shell and executing the anaconda-navigator executable from the command line. After you have launched Anaconda Navigator, click the Launch button under JupyterLab.


Assuming your conda-env is named cenv, it is as simple as :

$ conda activate cenv           # . ./cenv/bin/activate in case of virtualenv
(cenv)$ conda install ipykernel
(cenv)$ ipython kernel install --user --name=<any_name_for_kernel>
(cenv)$ conda deactivate

If you restart your jupyter notebook/lab you will be able to see the new kernel available. For newer versions of jupyter kernel will appear without restarting the instance. Just refresh by pressing F5.

PS: If you are using virtualenv etc. the above steps hold good.


A solution using nb_conda_kernels. First, install it in your base environment :

(base)$ conda install -c conda-forge nb_conda_kernels

Then in order to get a kernel for the conda_env cenv :

$ conda activate cenv
(cenv)$ conda install ipykernel
(cenv)$ conda deactivate

You will get a new kernel named Python [conda env:cenv] in your next run of jupyter lab / jupyter notebook

Note : If you have installed nb_conda_kernels, and want to create a new conda environment and have it accessible right away then

conda create -n new_env_name ipykernel

will do the job.


I tried both of the above solutions and they didn't quite work for me. Then I encountered this medium article which solved it: https://medium.com/@jeremy.from.earth/multiple-python-kernels-for-jupyter-lab-with-conda-c67e50de3aa3

Essentially, after running conda install ipykernel inside of your cenv environment, it is also good to run python -m ipykernel install --user --name cenv within the cenv environment - that way, we make sure that the version of python that is used within the jupyter environment is the one in cenv. Cheers!