今さら聞けない Jupyter notebook

# はじめに
Jupyter notebook ご存知ですか？ 知ってますよね？
そう、**機械学習やらPython周りのイケてるエンジニアが使っているアレ**です。

自分は全く知りませんでした　:expressionless:　

周りのエンジニアとの会話で、「MLとかPythonとか経験値なさすぎて危機感持ってる」的な話の流れで、courseraとか、Jupyter notebookのことを教えてもらいました。

---

ということで、今回は自分と同じような、「Jupyter notebook is 何？」な方へ、**Jupyter notebookについての概要説明から、インストール、ノートブックを動かしてみるところまでの一連の流れ**を紹介します。

この記事が、自分のような初学者の方のお役に立てば幸いです。

---

# Jupyter notebook is 何 ??

---

## Jupyter

Jupyter notebookを説明する前に、Juypyterプロジェクトについて知っておいたほうがいいでしょう。
<img width="1116" alt="スクリーンショット 2018-12-15 14.23.06.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/f884c5c6-6418-5a03-d087-3e24820c442c.png">

---

Jupyterプロジェクトとは、複数の言語にまたがって対話的な処理実行を実現するためのサービスやOSSを開発するためのプロジェクトです。

:octocat: https://github.com/jupyter
:earth_asia: https://jupyter.org/index.html
![repos_map.png](https://qiita-image-store.s3.amazonaws.com/0/18114/21b63543-3c77-f5e8-17af-1a44db102e73.png)

上記の図からわかるとおり、Jupyter notebookは、そのJupyterプロジェクトの中の1つになります。

---

## Jupyter notebook

では、Jupyter notebookとは何かと言うと、**OSSのWebアプリケーション**です。

:notebook_with_decorative_cover: https://github.com/jupyter/notebook
:notepad_spiral: https://jupyter-notebook.readthedocs.io/en/stable/

Jupyter notebookでは、コードを埋め込んだり実行したりできるドキュメントを作成することができます。
<img width="1116" alt="スクリーンショット 2018-12-15 14.49.47.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/1449e27c-4e94-a625-e5fb-fcabdae9982d.png">

ドキュメントは、数十の言語をサポートし、簡単に他の人とシェアすることが可能です。

また、企業や研究開発などでは、jupyterhubを使って複数人でノートブックを利用することもできます。

---

# インストールしてみる

---

インストールは、色んな方法がありますが、公式ではAnacondaを使う方法が推奨されています。
<img width="1082" alt="スクリーンショット 2018-12-15 14.53.04.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/332e4375-8cde-af7b-36a0-05b3e353431c.png">
:snake: https://www.anaconda.com/

---

Anacondaとは、データサイエンスをするための便利機能がまるっとPythonごと入っているディストリビューションです。ここに、**Jupyter notebookも含まれています**。

こいつをご自身の環境に合わせてダウンロードして使うのが、もっとも簡単でお手軽でしょう。

自分は、Macなのでここからダウンロードしました。
https://www.anaconda.com/download/#macos

また、Python3系とPython2系のAnacondaがあるのですが、今後を考えてPython3系のものを入れておきましょう。

ダウンロードしたpkgからインストーラーを起動してインストールします。インストールには５分くらい時間がかかりましたが、これで**まるっと環境が整いました！**

---

# Notebookサーバーを立ち上げる

---

Terminal やiTerm2などを開いて、コマンドを実行します。

```shell-session
$ jupyter notebook
```
---

すると、localhostでNotebookサーバー(Webアプリケーション)が立ち上がり、Notebookダッシュボード(次のような画面)が表示されたらOKです:raised_hands:

<img width="1082" alt="スクリーンショット 2018-12-15 15.06.17.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/673e6a34-1992-810b-1903-432ed5d98872.png">

---

## Notebookを作る

---

ダッシュボードのNewから、Python 3を選びます。
<img width="1058" alt="スクリーンショット 2018-12-15 15.14.55.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/17798eb4-4c90-d977-1c68-16df630fd4c9.png">

---

すると、新しいノートブック用に、こんな画面が開きます。
で、テキストボックスにPythonのスクリプトを書いて
<img width="1058" alt="スクリーンショット 2018-12-15 15.17.44.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/9170c3a7-5dfd-6f5c-aed2-e9f87ab0c2f8.png">

---

▶Run ボタンで実行すると、**実行結果が画面に表示されればOKです**:clap:
<img width="1058" alt="スクリーンショット 2018-12-15 15.18.49.png" src="https://qiita-image-store.s3.amazonaws.com/0/18114/3f31f922-954b-5bdc-7e88-bd354e8e3b8c.png">

---

# まとめ

---

いかがでしたでしょうか？ Jupyter notebookについて一通りの流れを紹介しました。

ここまでの説明では、まだまだJupyter notebookの入り口にたったに過ぎませんが、きっと Jupyter notebook　についての抵抗は少し減ったかと思います。

---

知識も必要ですが、**継続的に手を動かすことがすごく重要**なので、インタラクティブな Jupyter notebook はそういった意味ではとても優れていると感じました。

あとは、実際にどれだけ頭と手を動かせるかですね。

一緒にがんばりましょうー:muscle: