Jupyter Notebook +α

Python

今回の記事では「Jupyter Notebook」であまり知られていない機能や使い方を紹介したいと思います。

Jupyter Notebook」は機械学習などでよく使用されている、Webブラウザで記述・実行できるものです。

僕自身が使用しているものを紹介しているので、どんどん記事をアップデートさせていく予定です。

それでは早速みていきましょう!

jupyter notebook インストール

まずは「Jupyter Notebook」をインストールしていきます。

pip」と「conda」の2つの方法を紹介します。

Anaconda」で仮想環境を構築している方は、「conda」の方でインストールしてください。

# pip
pip install jupyter

# conda
conda install -c anaconda jupyter

これでインストールできます。

jupyter notebook 起動

では早速起動してみましょう。

terminal」で次のコマンドを実行してください。

jupyter notebook

少し待つとブラウザで「Jupyter Notebook」が開きます。

では基礎部分はここまでにして次から「」のものを紹介していきます。

バックグラウンドで起動

Jupyter Notebook」を起動すると、「terminal」を開きっぱなしにしなくてはいけません。

これは何かと不便なので、バックグラウンドで起動して開きっぱなしに対処しましょう。

次のコマンドを実行してみてください。

nohup jupyter notebook >> jupyter.log 2>&1 &

起動すると先ほどと違って一見何も起きていないように思えます。

少し待つと先ほど同様ブラウザで「Jupyter Notebook」が起動します。

terminal」を確認すると見た目は起動しっぱなしになっていないことを確認できます。

ちなみに起動した場所に「jupyter.log」をいうログファイルが作成されます。

エラーなどを確認できるので、何か起きたらこのファイルを確認しましょう。

*GitHubにプッシュするときはこのファイルを避けるようにしてください。)

The kernel appears to have died. It will restart automatically.

よくこんな感じのエラーが起きます。

俗にいう「カーネルが死んだ」です。

これに対処する方法として以下のコードを「Jupyter Notebook」のファイルの先頭に記述して、リスタートしてください。

import os
os.environ['KMP_DUPLICATE_LIB_OK']='TRUE'

なかなかめんどくさいですが、この方法しか知らないので他に良い方法があれば教えていただけると嬉しいです。

.bash_profile」に次のコードを記述することで対処できるそうなのですが、自分はうまくいかなかったので参考までに。

export KMP_DUPLICATE_LIB_OK=TRUE

これで解決しないときもあるので、そのときはググってみて解決法を探してみてください。

コードとマークダウンの切り替え

Jupyter Notebook」は「セル」にコードを記述して実行しますが、「セル」にはいくつか種類があります。

代表的なものとしてデフォルトの「コード」、マークダウン記法が使用できる「マークダウン」です。

これは上のバーで変更できるのですが、正直めんどくさい…。

なので簡単に切り替えられるショートカットを紹介したいと思います。

コード」→「マークダウン」は、「Command + m」を押した後に「m」を押してください。

マークダウン」→「コード」は、「Command + m」を押した後に「y」を押してください。

これで簡単に切り替えられるのでおすすめです。

ちなみにこれで切り替えた後、カーソルが消えてしまうので、「Enter」を押すとカーソルが再び出現します。

ぜひ使用してみてください。

便利すぎて泣けてきます。

マークダウンの書き方

Jupyter Notebook」でよく使用するであろうマークダウンの記述方法を簡単に紹介します。

見出し

#
##
###
####
#####
######

先頭に「」とスペースをつけることで見出しにすることができます。

コードが何をしているのかを一目でわかるようにできるので、あると見やすくなります。

リスト

-

先頭に「」とスペースをつけることでリスト形式にすることができます。

- リスト
    - リスト

また、改行後にタブキーを押すことでリストを階層構造にすることができます。

コード

```python
ここに書く
```

上記のようにすることでPythonのコードを書くことができます。

python」の部分を他の言語名にすることで他の言語もかけます。

テーブル

| キーワード | 説明 |
| --- | --- |
| キーワード1| 説明1 |

上記のようにすることでテーブルにすることができます。

2行目を「:—」とすると左寄せ、「—:」とすることで右寄せ、「:—:」で中央寄せにできます。

コード補完

コードを全て手打ちで1から書くのは修行すぎます。

エンジニアは少しでも楽をすることを目的としたいので、コード補完をして書く量を減らしましょう。

まずは下記のコマンドを「terminal」で実行してください。

# pipの場合
pip install jupyter_contrib_nbextensions

# anacondaの場合
conda install -c conda-forge jupyter_contrib_nbextensions

Jupyter notebook」を起動すると、上のバーに「Nbextensions」をいうものが出てくるのでクリックします。

クリックしたら、左上のチェックを外し、「Hinterland」にチェックを入れてください。

これで反映されます。

リスタートなどして確認してみてください。

最後に

今回は「Jupyter notebook」の+αの使い方を紹介してきました。

今後自分が使う中で新たに知ることがあればこの記事をアップデートしていきたいと思います。

また、何か質問などがあればTwitterのDMやここのコメントで気軽に聞いてください!

それでは!

コメント

タイトルとURLをコピーしました