😉

Jupyter Notebookでカーネル選択を可能にするための設定

2022/07/10に公開

zenn.devで初投稿の者です。テストも兼ねて投稿させていただきます。

本稿で実現できること

  • jupyter notebook 実行時に複数カーネル(≒仮想環境)を使い分けられるようになる

手順

(仮想環境の管理にcondaを使います)

condaにて仮想環境を構築する

GitBashやWindows PowerShellなどで以下を実行してください。

$conda --version
conda 4.13.0
$conda info -e 
  base   *  C:\Users\hoge\anaconda3 
$conda create --name hoge_env python=3.8
# 中略
$conda info -e 
  base   *  C:\Users\hoge\anaconda3 
  hoge_env      C:\Users\hoge\anaconda3\envs\hoge_env  # <- new
$conda activate hoge_env
(hoge_env)$ # <- こんな感じで環境に入っていることを示してくれるはず
(hoge_env)$conda info -e 
  base     C:\Users\hoge\anaconda3 
  hoge_env  *   C:\Users\hoge\anaconda3\envs\hoge_env # <- 選択されていることを確認

jupyterに仮想環境を読み込ませる

(hoge_env)$pip install ipython ipykernel
(hoge_env)$ipython kernel install --user --name=hoge_env --display-name=hoge_env
  • Jupyter Notebookを起動し、http://localhost:8888/tree/ にアクセスする
  • 画面右上の「NEW」を押下し、Python3(ipykernel)以外に「hoge_env」という選択肢が読み込まれていることを確認する

(手順以上)

トラブルシューティング

condaコマンドが実行できない

condaをインストールしたのにcondaコマンドが実行できない場合は、環境変数に設定する必要があります。

  • ご自身の環境で、anacondaがインストールされているパス(anaconda3という名前のフォルダの位置)を調べてメモする
  • スタートメニューにて「環境変数を編集」メニューと入力し、押下
  • ユーザー環境変数欄の「新規」を押下
  • 変数名にANACONDA、変数値にC:\Users\hoge\anaconda3;C:\Users\hoge\anaconda3\Scriptsのように入力(先程のメモを使うこと)
  • PC再起動
  • ターミナルでconda --versionと入力し、バージョン情報が出力されることを確認

conda activateしても環境が変わらない

以下のようになった場合はここを御覧ください。

$conda activate hoge_env
$ # <- 仮想環境に入ってくれない
$conda info -e
  base   *  C:\Users\hoge\anaconda3 
  hoge_env      C:\Users\hoge\anaconda3\envs\hoge_env  # <- やっぱりactivateできていない

ネットで少し調べると、「conda install -n root -c pscondaenvs pscondaenvsを実行すると直る」と出てくるのですが、筆者の環境の場合これに合わせてconda initとPCの再起動が必要でした。それがわからず相当の時間を費やしてしまいました...。

すなわち、筆者の環境ですと以下の実行で改善がはかれました。(PowerShellで実行。GitBashでは未確認)

$conda install -n root -c pscondaenvs pscondaenvs
$conda init powershell
$ #-> PC再起動する
$conda activate hoge_env
(hoge_env)$ # <- こんな感じで環境に入れることを確認

まとめ

  • 網羅的に解説していた記事が見つからず少し不便に感じたので、この度執筆してみました。どなたかのお役に立ちましたら幸いです。

参考

(以上)

Discussion