45
39

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Jupyterインストール

Last updated at Posted at 2017-03-27

とあるきっかけでZeppelinというウェブベースのノートブックサービスの存在を知りました。恥ずかしながら、こういった「ノートブックの中でコードが実行できる」というものを全く知らなかったので、Pythonの学習記録を残すにはよいのではないかと興味を持ちました。
少し調べてみると、ZeppelinでもPython連携は可能みたいですが、よりPythonに近いものとして、Jupyterというものがある、ということで試しに導入してみました。

環境

Windows10(64bit)
Anaconda3 4.3.1(これを入れると、jupyter_core 4.3.0がインストールされる)

Anaconda導入

公式によると、Jupyterは単体でのインストールではなく、Anacondaの一部としてインストールするのが推奨のようです。
またまた不勉強ですが、Anacondaも知らなかったので調べたところ、Pythonのディストリビューションの1つで、主に数値計算、データサイエンス系のライブラリが充実しているとのこと。またCondaというパッケージ管理のソフトを含み、これを使って2.xと3.xの使い分けや仮想環境構築(virtualenv/pyenv)もカバーできるようです。
Anacondaのダウンロードはこちらから。
Windows10(64bit)環境なので、対応するインストーラを落として実行。
ちなみにもともと入っていたPython2.7,3.5はいったんアンインストールしようかと思いましたが、StackOverflowに残してよいとあったので、とりあえず残しました。

基本的にデフォルトの設定を受け入れましたが、ユーザはAll Usersにしました。
また、必要容量1.8GBには少し驚きました。

Juputer起動

インストール完了後、コマンドプロンプトにて
jupyter notebookと打てばサーバがポート8888で起動し、勝手にブラウザで立ち上がります。
ポートを変更するには、jupyter notebook --port 9999, ブラウザの立ち上げをしないのは、jupyter notebook --no-browserです。

20170327_013.jpg

実行したフォルダのファイル一覧が表示されます。新しくnotebookを作るには、New→Python3を選択(この時点ではこれしか関連付けされていないので)。
出てきたセルに適当なコードを下記、Shift + Enterすると実行されます。インデントや色分けもやってくれます。

20170327_014.jpg

別バージョンのインストール

【参考】
https://jupyter.readthedocs.io/en/latest/install-kernel.html

各インタープリタはkernelと呼ばれる。
2.7をインストールするには、conda create -n py27 python=2.7.12 ipykernel
これで、C:\ProgramData\Anaconda3\envs\py27にインストールされる。
これは、JupyterというよりAnacondaの世界の話(JupyterはAnacondaの環境を使っているだけ)なので、Jupyter関係なく、Python2.7環境を呼び出せる。
これだけではJupyterとは関連づかないので、以下のように関連付ける。

>activate py27
(py27) >python -m ipykernel install --user

これでもう一度起動すると、python2も選べる。ここで表示される名前py27となるのかと思ったらPython 2になる。環境が作られるフォルダの名前が拾われるのかな?
%APPDATA%\jupyter\kernels\python2

20170327_015.jpg

呼び出したpy27環境の停止はdeactivate py27

他のコマンドの使用

python以外のことをさせたいなら、セルに%%cmdと入れれば、windowsのコマンドプロンプトのコマンドを使えます。うまくやれば、色々統合できそう。

20170327_016.jpg

(2019/02/10追記)デフォルトディレクトリの変更

色々な方が書いていますが。少し追加が必要だったのでメモ。
anacondaをインストールすると同時にインストールされるAnaconda Terminalというアプリケーションを実行し、以下のコマンドで設定ファイルを生成、それを編集する。

(base) C:\Users\ikedak2>jupyter notebook --generate-config
Overwrite C:\Users\ikedak2\.jupyter\jupyter_notebook_config.py with default config? [y/N]y
Writing default config to: C:\Users\ikedak2\.jupyter\jupyter_notebook_config.py

c.NotebookApp.notebook_dirというパラメータを書き換える。Windowsの場合は円マークを2回続けてエスケープする必要がある点に注意。

jupyter_notebook_config.py
## The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = 'C:\\Users\\ikedak2\\Jupyter_Memo'

これだけでは変更されないので、Windowsのアプリ一覧から、Jupyter Notebookを右クリックし、ファイルの場所を開くとする。そこにJupyter Notebookのショートカットがあるので、そのプロパティを開く。自分の場合は以下。
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)

  • 「リンク先」の中で、最後に%USERPROFILE%という記述がある場合はそれを削除する。
  • 作業フォルダを指定したディレクトリに合わせる
    上記2点を修正すると、無事想定通りに起動しました。

image

(2020/09/20追記)補完の追加

相当昔の記事なので、全体的にリバイズが必要な気はしますが、いったん追記します。
Jupyter NotebookはデフォルトではIDEのような入力補完が行われません。以下の手順で有効化できます。
まずAnacondaインストール時に一緒にインストールされる、Anaconda Promptを起動し、そこで以下を実行します。

pip install jupyter-contrib-nbextensions
pip install jupyter-nbextensions-configurator
jupyter contrib nbextension install
jupyter nbextensions_configurator enable

Jupyter Notebookを起動しなおすと、Nbextensionsというタブが追加されているので、そこでHinterlandをチェックします。

image

これでコード補完がされるようになります。

まとめ

これでJupyterを起動し、ノートブックごとにPython2.7,3.6を使い分けられるようになりました。

Jupyter, anaconda, ipython, condaの関係性が難しい…。
あと公式のドキュメントがものすごくたどりづらい気がする。

  • Anaconda: pythonのディストリビューション(jupyterを含む)
  • conda: anacondaのパッケージ管理ソフト
  • ipython: pythonのシェルを拡張したもの(つまりシェル)。補完などの機能がデフォルトのシェルよりも優秀らしい。ipython notebookという、ipythonをブラウザから実行(プラスメモ)の機能をもっていたが、それが分離してjupyterとなった。
  • jupyter: webベースのノートブック。バックエンドとしてipythonを使用。

すなわち、Jupyterからpythonを使う時のシェル(インターフェース)がipythonで、その全体がanacondaというディストリビューションに含まれている、という理解。
つまり、JupyterはPythonに近い、というよりほぼpythonそのものなipythonの派生だったわけです。きっかけになったzeppelinもそのうち挑戦しようと思います。

45
39
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
45
39

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?