はじめに
最近になって,Anacondaで仮想環境を作成して用途に合わせた環境でコーディングするようになりました。その中で、所有しているPCのうち、なぜか一台だけは何の設定をしなくてもJupyter Notebookからカーネルを選択できたのですが、それ以外のPCでは設定無しではカーネルを選択することができませんでした。(おそらくAnacondaのバージョンの問題。)
そこで、カーネルをJupyter Notebookから選択することができるようにするために、ネット上で色々と調べてみました。しかしながら、私の環境では、(Windowsだからか)追加のパッケージを入れてもうまくいかなかったり、コマンドの情報が古かったりしたので、自分用にまとめておきます。
この設定をすることで、次のように一瞬でカーネルを変更できるようになります!
実行環境
- Windows 10(64bit)
- Anaconda 4.3.0(64bit)
設定手順
仮想環境の作成
condaを使うことで、簡単に仮想環境を作成することができます。今回は、jupyterを使うことを前提としているので、この仮想環境の作成時に同時にjupyterもインストールしておきます。
# 仮想環境の作成、jupyterもインストール
$ conda create --name=test python=python3.6 jupyter
# 仮想環境ができたかの確認、リストに表示されていれば成功
$ conda info -e
pythonのバージョンや--name=<名前>は、自分の環境に合わせて適当なものを入力してください。
仮想環境のカーネルをjupyterに追加
この段階では、まだカーネルは追加されていないと思います。ここで、次のコマンドを実行してみてください。
# 利用可能なカーネルの表示
$ jupyter kernelspec list
ここに、先ほど追加した仮想環境のカーネルを追加します。仮想環境をアクティベートした状態で次のコマンドを実行します。
# 仮想環境をアクティベート
$ activate test
# カーネルを追加
$ ipython kernel install --user --name=test --display-name=test
以上で、Jupyter Notebook上でカーネルの切り替えや選択をすることができるようになっています。
最後に、カーネルを追加するときの主要なオプションについて、まとめておきます。
オプション | 役割 |
---|---|
-h, --help | オプションに関するヘルプを表示 |
--user | 現在ログイン中のユーザーにインストール |
--name NAME | カーネルスペックの名前を指定 複数のIPythonカーネルを指定するときには必須 |
--display-name DISPLAY_NAME | 表示されるカーネルの名前を指定 |
追加したカーネルを削除する方法
追加したカーネルの情報は、--userオプションを付けていた場合、~\AppData\Roaming\jupyter\kernelsの中に置かれています。ここにある--nameで指定した名前のフォルダを削除することで追加したカーネルを削除することができます。
また、以下のコマンドでカーネルを削除することができます。
# カーネルを削除
$ jupyter kernelspec uninstall test