web-dev-qa-db-ja.com

Conda環境とJupyterノートブックをリンクする

Pythonで科学的なことをするのに良い環境を整えようとしています。そのために、Jupyterとminicondaをインストールしました。

それから、私は異なる環境を持ち、それらをJupyterノートブックで使用できるようにしたいと考えています。そこで、condaで2つのカスタムenvを作成しました:py27とpy35。

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

その後、ノートブックには2つのカーネルpython 2python 3があります。ノートブックの中では、python3カーネルで次のようになります:

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

そして、これはpython2カーネルで:

> import sys
> print(sys.executable)
/usr/local/opt/python/bin/python2.7
  • sys.executableをpython2のminiconda envに設定するにはどうすればよいですか?
  • Conda envをノートブックカーネルにバインドするにはどうすればよいですか?
  • source activate py35jupyter notebookとリンクしていますか?

私は本当に何かを逃したと思います。

みんなありがとう。

---編集

私は複数のjupyterビンを持っています:

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

ここには/usr/local/share/jupyter/kernels/python2という1つのカーネルしかありません。しかし、Jupyterの内部には、python2python3という2つのカーネルがあります。もう1つはどこにありますか?


kernel.jsonから/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}"
 ]
}

その後 :

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

だから何も変わっていない

42
Thomas Dehaeze

Anacondaについては、はるかに簡単で適切なソリューションをお勧めします。 nb_conda_kernelsパッケージ をご覧ください。

「Jupyter Notebook内でconda環境ベースのカーネルを管理する」ことができます。

Anacondaバージョン4.1.0以降に含まれている必要があります。そうでない場合は単に使用します

conda install nb_conda

これで、ノートブックインターフェイスからすべてを直接管理できるようになります。

77
5agado

Conda-envの名前がcenvであると仮定すると、次のように簡単です:

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

Jupyterノートブック/ラボを再起動すると、新しいカーネルが利用可能になります。

PS:virtualenvなどを使用している場合、上記の手順は有効です。

11
Nihal Sangeeth

私は解決策を見つけました。ここにあるカーネルのセットアップ~/Library/Jupyter/kernels/

次に、kernel.jsonファイルを変更し、正しいパスをpythonに設定しました。

今では機能しています。

5
Thomas Dehaeze

他に何が助けになったかはわかりませんが、私にとって重要なのは、nb_conda_kernelsをルートconda環境にインストールすることでした。特定のconda環境にインストールしようとしても、Jupyter Notebookがデフォルト以外のconda環境を使用できるようになりませんでした。

conda install -n root nb_conda_kernels

jupyter notebook
4
vedrano