Jupyter Notebook の使い方2020年11月7日 | |
はじめにJupyter Notebook の使い方について。 環境
Jupyter Notebook とはJupyter Notebook (旧 IPython Notebook) とは、平たく言えば、Web ブラウザで動く IPython である。ただし、今は Python 以外の言語 (Ruby や Julia など) にも対応している。 コマンドラインベースのインタープリタと異なり、以前に入力したコードに戻って再実行させることができる。文章や図も入れられ、数式もいける。Matplotlib の結果を埋め込むこともできる。 例: 12 steps to Navier-Stokes (CFD Python: 12 steps to Navier-Stokes (Barba group)) - 式もグラフもあって例としてわかりやすい。 他の例は nbviewer で見つけられる。 たとえば、Python でちょこちょこ試行錯誤気味に作業をして、最後に文章にまとめようというときは、改めて文章を書きつつ、コードと結果をインタープリタからコピペしつつ、グラフ表示があればそれを画像にして文章に埋め込みつつ…とやると思うが、Jupyter Notebook だと、コードの試行錯誤作業と文章化を同時に行える。また、出来上がった文章はそのまま再現可能な形式になっている。Notebook 形式だけでなく、HTML や Python コードとして書き出すこともできる。 インストールJupyterLab をインストールする。専用の仮想環境を作る。 (base)$ conda create -n jupyter python=3.7 JupyterLab と Matplotlib あたりをインストールする。 (base) $ conda activate jupyter (jupyter) $ conda install -c conda-forge jupyterlab (jupyter) $ conda install matplotlib Matplotlib と一緒に NumPy も入る。必要なら SciPy も入れる。 Jupyter Notebook の使い方起動適当な作業ディレクトリで以下のように実行する。 $ jupyter lab ブラウザが起動して、以下のような画面が表示される。 ![]() 新規作成[Launcher] タブの "Notebook" にある "Python 3" アイコンをクリックすると、新しいノートブックが開く。 ![]() メニューの [File]-[New]-[Notebook] や [File]-[New Launcher]、あるいは左上の [+] ボタンを用いてもよい。 名前の変更タブを右クリックして出てくるメニューの [Rename Notebook...] で名前を変更できる。 保存上のセーブボタンを押すなどすればよい。また、自動保存もされる。 既存のノートブックを開く左側のファイルブラウザからノートブックを選択 (ダブルクリック) すればよい。 セルの操作選択すると文字を入力できるところがあるが、これをセルという。セルは、入力状態になっていない状態で、キーボードの B や A で追加できる。X で削除 (カット)、C でコピー、V や Shift+V で貼り付けができる。 コードの実行セルは、デフォルトではコードを入力できるようになっている。試しに何か入れてみて、Shift+Enter で実行される (Ctrl+Enter でもよい。Shift+Enter との違いは、下にセルが追加されるか否かである)。 ![]() ここではあえて print() を用いているが、最後に式を書けばその値が出力される。 ![]() 上のセルに戻って再実行させることもできる。 ![]() 下のセルは再実行しないかぎり上のセルの結果が反映されない。 すべて再実行するには、メニュー [Run]-[Run All Cells] を選択する。 ![]() コードの番号を最初から振りなおしたい場合 (初期化して最初からやりなおしたい場合) は、メニュー [Run]-[Restart Kernel and Run All Cells...] を実行すればよい。 Matplotlib の結果の埋め込みMatplotlib の結果は Notebook に埋め込まれる。 ![]() plt.plot() の最後のセミコロンは返り値を表示させないためのもので、代わりに plt.show() を実行してもよい。 セルのタイプセルのタイプとして、以下のものが選べる。
セルのタイプは、セルを選択した状態で、上部のドロップダウンリストで選択できる。"Code" はコードを入力・実行するタイプである。"Markdown" は Markdown 記法 で文章を記述できるタイプである。"Raw" は、ナマのテキストのようである。 たとえば、以下のような Markdown のセルを用意する。ちなみにセルの追加は上部の "+" ボタンでできる。 ![]() これらのセルをそれぞれコード同様に "実行" すると、つぎのようになる。 ![]() "$ ... $" で文の中に TeX 形式の数式を書くことができる。"$$ ... $$" で独立した行の数式をかける。 $$ f = \sin(x) $$ また、TeX の数式を直接書くこともできる。 \begin{equation*} f = \sin(x) \end{equation*} \begin{align*} f =& \sin(x) \\ g =& \cos(x) \end{align*} アスタリスク (*) を付けない場合は、HTML で書き出した際などに数式番号が付く。 リンクを貼るには次のように書く。 [PENGUINITIS](http://www.geocities.jp/penguinitis2002/) HTML も書ける。 <a href="http://www.geocities.jp/penguinitis2002/">PENGUINITIS</a> 絵を貼ることもできる。 <center><img src="fig.png"></center> HTML などへの書き出しメニュー [File]-[Export Notebook As...] で HTML やコード (Executable Script) として保存できる。 コマンドで変換することもできる。 $ jupyter nbconvert --to html test.ipynb $ jupyter nbconvert --to script test.ipynb コードに変換すると、コード以外の部分はコメントになる。 | |
PENGUINITIS |