🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2597閲覧

condaで生成される2つのjupyterのカーネルの違いは?

koyamashinji

総合スコア45

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/11/23 08:10

まず、condaで新しい環境を作成 -> jupyterをインストール -> jupyterのカーネルを作成しました。

AnacondaPrompt

1(base) C:\Users\shinjikoyama> conda create -n test01 2 3(base) C:\Users\shinjikoyama> activate test01 4 5(test01) C:\Users\shinjikoyama> conda install jupyter 6 7(test01) C:\Users\shinjikoyama> python -m ipykernel install --user --name=test01_kernel --display-name=test01_display_name

次に、作成したtest01の環境において、カーネルのリストを出力しました。

AnacondaPrompt

1 2(test01) C:\Users\shinjikoyama>jupyter kernelspec list 3 4# 出力 5Available kernels: 6 test01_kernel C:\Users\shinjikoyama\AppData\Roaming\jupyter\kernels\test01_name ★上記の4行目で作成したカーネル 7 python3 C:\Users\shinjikoyama\anaconda3\envs\test01\share\jupyter\kernels\python3 ★このカーネルは何?

上記の#出力のとおり、
最初の4行目で作成したtest01_kernel以外に、python3という名前のカーネルがtest01環境の中に生成されていますが
これらの違いは何でしょうか。


ちなみに、2つのカーネルのディレクトリを見に行くと、kernel.jsonが置いてあり、内容は次のとおりでした。

test01

1{ 2 "argv": [ 3 "C:\Users\shinjikoyama\anaconda3\envs\test01\python.exe", 4 "-m", 5 "ipykernel_launcher", 6 "-f", 7 "{connection_file}" 8 ], 9 "display_name": "test02_display_name", 10 "language": "python" 11}

python3

1{ 2 "argv": [ 3 "C:/Users/shinjikoyama/anaconda3/envs/test01\python.exe", 4 "-m", 5 "ipykernel_launcher", 6 "-f", 7 "{connection_file}" 8 ], 9 "display_name": "Python 3", 10 "language": "python" 11}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

conda install jupyterしたときにkernelもインストールされるので、それがpython3という名前のkernelなのではないかと思われます。

私の場合は、base環境では
conda install jupyter
して、その他の環境では
conda install ipykernel + ipykernel install ...
でやるようにしています。

投稿2020/11/23 09:45

bsdfan

総合スコア4794

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

koyamashinji

2020/11/23 11:38 編集

ご回答誠にありがとうございます。 >私の場合は、base環境ではconda install jupyterして、 >その他の環境ではconda install ipykernel + ipykernel install ... >でやるようにしています。 理解が悪く恐縮ですが、なぜこのような方法をとってらっしゃるのでしょうか?
bsdfan

2020/11/23 12:54 編集

本質でないところで混乱させていたら申し訳ないです。別にそれをお勧めしているものでもありません。 jupyterは中でkernelを切り替えられるので、一つの環境でインストールしておけば、各環境にjupyterをインストールする必要はなくて、ipykernelだけインストールしても動きますよ、ということを言いたかっただけです。 今回の回答としては、conda install jupyterでkernelインストールまでされるので、別途ipykernel installをする必要はないということになります。
koyamashinji

2020/11/24 13:08

いえいえ、ご返信有難うございます。 >一つの環境でインストールしておけば、各環境にjupyterをインストールする必要はなくて https://weblabo.oscasierra.net/python-anaconda-jupyter-modulenotfounderror/ こちらの記事だと、特定の環境に jupyter をインストールしていないことで、root 環境の jupyter を起動してしまい、rootにないパッケージをimportするとエラーになる..とも書かれていますが、貴殿は特にそのような問題にはなっていないでしょうか。 (私の理解が間違っていたらすみません)
bsdfan

2020/11/24 13:30

そのページではkernelについて書かれていないのではっきりとはわかりませんが、kernelさえ正しく指定すれば大丈夫なはずです。 ただ、時々あるのはdllのロードができないというエラーで、その場合はkernel.jsonを修正する必要が出てきます。 ここで悩まれるのももったいないですし、それなら仮想環境にjupyterをインストールしても問題あるわけではないので、インストールして次に進まれたほうがいいですよ。 kernelが複数できても、いらなかったら消すだけです。
koyamashinji

2020/11/26 05:12

回答誠にありがとうございました!大変勉強になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問