Vincular el entorno de Conda con Jupyter Notebook

Estoy tratando de establecer un buen ambiente para hacer algunas cosas científicas con python. Para ello, instalé Jupyter y miniconda.

Entonces quiero poder tener diferentes entornos y usarlos con los portátiles Jupyter. Así que creé dos envs personalizados con conda: py27 y py35.

> conda env list # conda environments: # py27 /Users/***/miniconda3/envs/py27 py35 /Users/***/miniconda3/envs/py35 root * /Users/***/miniconda3 

Luego en mi cuaderno tengo dos núcleos python 2 y python 3 . Dentro de una libreta, obtengo lo siguiente con el kernel de python3:

 > import sys > print(sys.executable) /Users/***/miniconda3/envs/py35/bin/python 

Y esto con el kernel python2:

 > import sys > print(sys.executable) /usr/local/opt/python/bin/python2.7 
  • ¿Cómo puedo configurar sys.executable en miniconda env para python2?
  • ¿Cómo puedo enlazar una conda env con un kernel de notebook?
  • ¿Está source activate py35 tiene un enlace con jupyter notebook ?

Creo que realmente me perdí algo.

Gracias a todos.

— editar

Tengo varios contenedores de jupyter:

 > where jupyter /usr/local/bin/jupyter /usr/local/bin/jupyter /Users/ThomasDehaeze/miniconda3/bin/jupyter 

Solo tengo un kernel aquí /usr/local/share/jupyter/kernels/python2 . Pero dentro de Jupyter, tengo dos núcleos, python2 y python3 . ¿Dónde puedo encontrar el otro?


kernel.json desde /usr/local/share/jupyter/kernels/python2 :

 { "display_name": "Python 2", "language": "python", "argv": [ "/Users/***/miniconda3/envs/py27/bin/python2.7", "-m", "ipykernel", "-f", "{connection_file}" ] } 

Y entonces :

 import sys print(sys.executable) /usr/local/opt/python/bin/python2.7 

Así que nada ha cambiado.

Para Anaconda te sugiero una solución mucho más fácil y adecuada; solo dale un vistazo al paquete nb_conda_kernels .

Le permite “administrar sus núcleos conda basados ​​en el entorno dentro del cuaderno Jupyter”.

Se debe incluir desde la versión 4.1.0 de Anaconda, de lo contrario simplemente use

 conda install nb_conda 

Ahora debería poder administrar todo directamente desde la interfaz de Notebook.

Encontré la solución. La configuración de los núcleos donde se encuentra aquí ~/Library/Jupyter/kernels/ .

Luego modifiqué el archivo kernel.json y establecí la ruta correcta a Python.

Ahora funciona.

Suponiendo que su conda-env se llame cenv , es tan simple como:

  $ conda activate cenv (cenv)$ conda install ipykernel (cenv)$ ipython kernel install --user --name= (cenv($ conda deactivate 

Si reinicia su notebook / lab jupyter, podrá ver el nuevo kernel disponible.

PD: Si está utilizando virtualenv, etc., los pasos anteriores son válidos.

No estoy seguro de qué otra cosa me ayudó, pero para mí fue crucial instalar nb_conda_kernels en el entorno root conda. El bash de instalarlo en un entorno específico de Conda no permitió que Jupyter Notebook pudiera utilizar otro entorno de Conda distinto del predeterminado.

 conda install -n root nb_conda_kernels jupyter notebook