(PS2016/1/13) Je suis accro à Jupyter depuis que j'ai lu Jupyter arrive si vite que vous êtes prêts (IPython Notebook + R).
J'utilise pyenv
pour faire coexister Anaconda 2 et Anaconda 3, mais lors du basculement entre les versions d'Anaconda dans Jupyter, quittez Jupyter, basculez avec pyenv et recommencez! C'est devenu difficile à faire. J'aimerais pouvoir basculer facilement entre Python 2 et Python 3 à partir du menu Nouveau! J'ai pensé, alors j'ai essayé de définir cette zone. (Parce que je suis nouveau sur Jupyter, merci de me le faire savoir dans les commentaires s'il existe un moyen plus simple ...)
Le Python suivant est installé dans pyenv.
Pour le meilleur ou pour le pire avec pyenv, Jupyter reflète l'environnement Python appliqué par pyenv.
Cependant, cela gêne l'utilisation de Jupyter. Je veux pouvoir basculer facilement entre Anaconda 2 et Anaconda 3. Par conséquent, je vais mettre un lien symbolique comme suit afin que chaque Anaconda puisse être démarré directement.
cd /usr/local/bin/ #Où se trouve le CHEMIN
ln -s ~/.pyenv/versions/anaconda-2.4.0/bin/python ./jupyter-python2
ln -s ~/.pyenv/versions/anaconda3-2.4.0/bin/python ./jupyter-python3
Je fais ça pour un fichier appelé kernel.json
que je suis sur le point d'écrire, y a-t-il un meilleur moyen ...?
Faisons maintenant apparaître Python 2 et Python 3 ensemble dans le menu Nouveau.
Tout d'abord, appuyez sur la commande suivante.
mkdir -p ~/.ipython/kernels/python3
mkdir ~/.ipython/kernels/python2
touch ~/.ipython/kernels/python3/kernel.json
touch ~/.ipython/kernels/python2/kernel.json
De cette façon, vous pouvez ajouter des noyaux en créant un répertoire .ipython / kernels
dans votre répertoire personnel et un répertoire avec un fichier kernel.json
en dessous.
Maintenant, éditez ~ / .ipython / kernels / python2 / kernel.json
avec votre éditeur préféré comme suit.
python2/kernel.json
{
"display_name": "Python 2"
"language": "python"
"argv": [
"jupyter-python2",
"-m", "ipykernel",
"-f", "{connection_file}"
]
}
De cette façon, vous pouvez spécifier les commandes et leurs arguments dans le champ «" argv "». Donc, si vous spécifiez jupyter-python2
plus tôt, Jupyter démarrera Anaconda 2 en sélectionnant" Python 2 "quel que soit le Python appliqué dans pyenv.
Ici, je suis entré dans la partie "ipykernel". En fait, lorsque je regarde divers sites, cette partie est décrite comme "IPython.kernel". Quand j'ai fait la même chose dans mon environnement, j'ai reçu l'avertissement suivant, qui ne semblait pas bon.
ShimWarning: The `IPython.kernel` package has been deprecated.
À partir de la déclaration d'avertissement qui était sortie à ce moment-là, j'ai ressenti l'atmosphère de "Non, importez l'ipykernel", donc quand je spécifie ʻipykernel` tel qu'il est maintenant, l'avertissement n'apparaît pas. , Il a repris sa forme actuelle.
Donc, sur cette base, j'écris également python3
comme suit.
python3/kernel.json
{
"display_name": "Python 3"
"language": "python"
"argv": [
"jupyter-python3",
"-m", "ipykernel",
"-f", "{connection_file}"
]
}
Cela devrait probablement vous permettre de basculer dans votre notebook sans avoir à revenir à pyenv.
y__sama m'a donné quelques informations dans les commentaires, donc je n'ai pas à faire les choses folles ci-dessus, alors je vais l'ajouter ici.
Au fait, il existe une commande appelée «conda» dans la région d'Anaconda. Je savais que cela existait, mais je ne savais pas ce que c'était. (Eh.) En termes simples, cela semble également créer un environnement virtuel.
Par exemple, en utilisant le conda
de anaconda3, nous pourrions créer un environnement virtuel jupyter-py2
comme~ / .pyenv / versions / anaconda3-2.4.0 / envs / jupyter-py2 /
.
Il semble que l'environnement virtuel Python est actif et que le noyau est automatiquement ajouté à ~ / Library / Jupyter / kernels /
en tapant la commande suivante.
jupyter kernelspec install-self --user
En regardant mon utilisation et le contenu du kernel.json
généré, j'ai senti qu'il n'était pas nécessaire de créer un environnement virtuel avec conda
. Alors maintenant (pour l'instant) ça ressemble à ceci:
--Préparer anaconda2 et anaconda3 dans pyenv
--Activer anaconda2, jupyter kernelspec install-self --user
--Activer anaconda3, jupyter kernelspec install-self --user
Même ainsi, tout ce que vous devez savoir est jupyter kernelspec install-self --user
. Merci d'avoir étudié.
À ce stade, vous voudrez également ajouter le noyau Julia. Je pense que Jupyter est également utile pour étudier Julia, qui est un sujet brûlant ces jours-ci, donc je l'ajouterai à cette occasion.
J'ai déposé le fichier dmg de Julialang.org/downloads et l'ai installé. Il semble que vous puissiez le faire avec Homebrew, mais j'ai l'impression que la compilation a échoué ou que c'était gênant, c'est donc recommandé (rires)
Après cela, mettez l'alias julia
dans / Applications / Julia-0.4.2.app / Contents / Resources / julia / bin / julia
.
Ensuite, installez ʻIJulia`. Démarrez Julia et tapez:
Pkg.add("IJulia")
Ensuite, dans mon cas, l'erreur suivante a été générée vers la fin.
===============================[ ERROR: IJulia ]================================
LoadError: __precompile__(true) but require failed to create a precompiled cache file
while loading /Users/"username"/.julia/v0.4/IJulia/deps/build.jl, in expression starting on line 2
================================================================================
=====================================[ BUILD ERRORS ]=====================================
WARNING: IJulia had build errors.
- packages with build errors remain installed in /Users/"username"/.julia/v0.4
- build the package(s) and all dependencies with `Pkg.build("IJulia")`
- build a single package by running its `deps/build.jl` script
==========================================================================================
Je pensais que c'était ... mais cela a fonctionné si je faisais ce qui suit. Pourquoi? Lol
Pkg.rm("IJulia")
Pkg.add("IJulia")
À ce stade, démarrez Julia et procédez comme suit pour démarrer le bloc-notes comme d'habitude.
using IJulia
notebook()
Il a été ajouté au nouveau menu comme ceci.
Après cela, même si j'ai ouvert le notebook Jupyter en Python, il y avait un élément Julia dans le menu Nouveau, il semble donc qu'il n'y ait pas besoin d'écrire kernel.json
pour julia comme auparavant. (Si nécessaire, ajoutez un style à ce moment là lol)
Il fait donc beau et je peux écrire des cahiers en Julia! Je vous remercie pour votre travail acharné.
Les noyaux Julia ajoutés de cette façon sont enregistrés dans ~ / Library / Jupyter /
.
Les gens comme moi qui sont ennuyés par les détails tels que vouloir changer "Julia 0.4.2" en "Julia" dans le NOUVEAU menu du notebook devraient jeter un œil à kernel.json
ici.
Ce sont les articles et sites qui ont été pris en charge cette fois. J'espère que cela est également utile!
Recommended Posts