付録 A — Jupyter Notebook

Jupyter Notebookは、ウェブブラウザ上で実行できる対話型のプログラミング環境です。Pythonだけでなく、RやJuliaなどの言語にも対応しています。プログラムとその実行結果、さらに文章や画像などを含めたドキュメントを作成できるため、データ分析のレポート作成にも利用できます。

Jupyter Notebookを利用するには、自身のコンピュータ上に環境構築を行う方法と、リモート実行環境を利用する方法があります。リモート実行環境を利用する場合は、自身のコンピュータ上に環境構築を行う必要はありませんが、実行環境を提供するサービスのアカウントが必要な場合があります。

ここではローカル実行環境とリモート実行環境のそれぞれについて説明します。

A.1 ローカル実行

自身のコンピュータ上にPython環境を整備して実行する方法です。リモート実行環境とは異なり、自身のコンピュータ上で動作できるため、気軽に実行できる反面、環境構築に知識と手間がかかります。

A.1.1 Windows

  • anaconda
  • VSCode + WSL + Docker

A.1.2 macOS

  • VSCode + Docker

A.2 リモート実行環境

Jupyter Notebookを実行するための環境を提供するサービスを利用する方法です。Jupyter環境を提供するサービスは多数ありますが、ここでは代表的なものを紹介します。

A.2.1 Google Colaboratory (Colab)

ColabはGoogleが提供するJupyter Notebookのリモート実行環境です。Googleアカウントがあれば無料で利用できます。制限付きではありますが、GPUを利用することもできます。また、有料のプランを契約することで、高性能なGPU、TPUを利用することも可能です。

Colabのウェブサイトを開き、Googleアカウントでログインを行うと、以下のような画面が表示されます。この画面では、Colabの利用例を紹介したノートブックや、自身のGoogleドライブに保存されているノートブックを開くことができます。また、ノートブックをアップロードしてColabで編集したり、GitHubリポジトリと紐付けてノートブックを開いたりすることもできます。

Google Colaboratoryにログインした状態。さまざまな方法でノートブックを開くことができる。

Google Colaboratoryにログインした状態。さまざまな方法でノートブックを開くことができる。

ノートブックを新規作成ボタンを押すと、新しいノートブックを作成することができます。Colabで作成されるノートブックは、ログインしたGoogleアカウントに結びつけられ、Googleドライブ上のColab Notebooksフォルダに保存されます。

A.2.2 SageMaker Studio

Amazon

A.2.3 Kaggle

A.2.4 Binder

A.3 基本操作

A.3.1 コードセルとテキストセル

Jupyterでは、コードセルとテキストセルの2種類のセルを利用します。コードセルにはプログラムを記述し、テキストセルには文章を記述します。テキストセルでは、マークダウン記法を使った文字装飾やリンク・画像の埋め込みなどが可能です。また、コードセルに記述したプログラムは、セルごとに実行することができます。これらのセルを組み合わせることで、プログラムとその実行結果、さらに文章や画像などを含めたドキュメントを作成できます。

セルに記述されたプログラムや文章の装飾を実行するには、左側に表示されている再生ボタンを押すか、Shift + Enterを押します。このとき、コードセルの場合は[ ]の中に*が表示されます。*が表示されている間は、プログラムが実行中であることを示します。*1などの数値に変わると、そのセルの実行が完了したことを意味します。この番号は、ノートブック全体でのセルの実行順序を表しています。

Jupyterでは、セルの実行順序に注意が必要です。Jupyterでは、セルを実行した順序に従って、変数の値や関数の定義などが記憶されます。そのため、ノートブックの上部にあるセルでも実行をし忘れていると、下部のセルの実行でエラーが発生することがあります。また、セルを実行する順序を間違えると、意図しない結果になることがあります。

A.4 Jupyter Lab