72 votes

Lier l'environnement Conda à Jupyter Notebook

J'essaie de créer un bon environnement pour faire des travaux scientifiques avec Python. Pour ce faire, j'ai installé Jupyter et miniconda.

Ensuite, je veux pouvoir disposer de différents environnements et les utiliser avec les carnets Jupyter. J'ai donc créé deux environnements personnalisés avec conda : py27 et py35.

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

Ensuite, sur mon ordinateur portable, j'ai deux noyaux python 2 y python 3 . Dans un carnet de notes, j'obtiens ce qui suit avec le noyau python3 :

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

Et ceci avec le noyau python2 :

> import sys
> print(sys.executable)
/usr/local/opt/python/bin/python2.7
  • Comment puis-je définir le sys.executable à l'environnement miniconda pour python2 ?
  • Comment lier un conda env avec un noyau d'ordinateur portable ?
  • Fait source activate py35 a un lien avec jupyter notebook ?

Je pense que j'ai vraiment raté quelque chose.

Merci à tous.

--- éditer

J'ai plusieurs bin jupyter :

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

Je n'ai qu'un seul noyau ici /usr/local/share/jupyter/kernels/python2 . Mais dans Jupyter, j'ai deux noyaux, python2 y python3 . Où puis-je trouver l'autre ?


J'ai modifié kernel.json de /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}"
 ]
}

Et puis :

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

Donc, rien n'a changé

1 votes

Cela pourrait aider, vous permet de choisir dans quel environnement exécuter votre noyau en ipython : groups.google.com/a/continuum.io/forum/m/#!topic/anaconda/

0 votes

Merci, je vais voir ça.

0 votes

Voir ma réponse ici : stackoverflow.com/questions/30492623/ - vous voudrez probablement utiliser l'indice avec l'option --name argument.

0voto

pari Points 176

Ce qui a fonctionné pour moi est : créer un environnement virtuel, installer ipykernel, enregistrer l'environnement virtuel dans le noyau jupyter et charger le notebook jupyter :

$ conda create -n testEnv python=3.6
$ conda activate testEnv
(testEnv)$ conda install ipykernel
(testEnv)$ ipython kernel install --user --name=testEnv
(testEnv)$ jupyter notebook

Après cela, dans le carnet de notes de jupyter vous devriez pouvoir trouver l'environnement créé parmi la liste des autres noyaux

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X