【Shopifyストア運用支援】Jupyter Notebookでレポートを作成する(前編)
Jupyter Notebook(ジュピターノートブック)はWebブラウザ上で動作する簡易的なIDE(統合開発環境)です。コードを数行書いては実行・デバッグを繰り返すことができ、コマンドラインやターミナルといったCUI(キャラクター・ユーザー・インターフェイス)に不慣れな方でもプログラミングしやすいツールです。また、グラフの描画などのビジュアル面も優れているため、どのようなデータを使い、どのような計算で得られた結果がこのようなグラフになるといった、一連のデータ操作と結果が一目で把握できるためレポートツールとしても有効活用できます。
目次[非表示]
Jupyter Notebook(ジュピターノートブック)の準備
コマンドプロンプトを開く
Windowsメニューから「Windows システム ツール」の中の「コマンド プロンプト」を選ぶ、または Windowsキーと「R」を同時押しして、「ファイル名を指定して実行」のプロンプトを開いて、「cmd」を入力することでコマンドプロンプトを実行することができます。
Jupyter Notebookの環境を作成する
コマンドプロンプトを開いたら、通常はユーザーのホームディレクトリがカレントディレクトリ(現在のディレクトリ)になっているので、「cd documents」でドキュメントディレクトリに移動、「mkdir 任意のディレクトリ名」で新しくディレクトリを作成します。下図の例では「jupyter_workspace」というディレクトリを作成しています。そして、「python -m venv jupyter_workspace」で新しく作成したディレクトリを pythonの仮想環境にします。
仮想環境とは、簡単にいうと、1台のパソコンの中に別のパソコンのような環境を構築することです。例えば、バージョンの異なる Pythonを使う場合や環境ごとに必要最小限のモジュール(パッケージ)をインストールできたり、開発用のパソコンから運用で使うパソコンに仮想環境単位で移行するといったことが容易にできるようになります。
ここでは、Python3 で標準となっている venv を使います。「python -m venv jupyter_workspace」というコマンドは、python を実行する際の -m オプションでモジュール venv をロードし、そして venv のオプションに仮想環境を構築するディレクトリ jupyter_workspace を指定しています。構築された環境は下図のようになります。
仮想環境のアクティベート
仮想環境を構築したら、その仮想環境での作業を行うために、仮想環境のアクティベート(有効化)をする必要があります。そのコマンドが、仮想環境下にある Scripts サブディレクトリ内の activate コマンドです。
「jupyter_workspace\Scripts\activate」を実行すると、仮想環境「jupyter_workspace」が有効になり、コマンドプロンプトも Windows のプロンプトから仮想環境のプロンプトに変化します。
Jupyter のインストール
pip install jupyter
仮想環境の pip コマンドで jupyter をインストールします。コマンドは「pip install jupyter」です。
「pip install jupyter」を実行すると何やらエラーが表示されました。黄色の文字は警告、赤色の文字はエラーを表しています。jupyterが見つからないというメッセージのようです。タイプミスしているわけでもありませんので、少し上のメッセージを調べます。すると、SSL認証の確認で問題があると言っています。
このエラーが出る原因はいくつかあるようですが、Google などで「pip ssl エラー」として検索したところによると、Python と pip と OpenSSLのバージョンの問題のような気がします。なので、すべてを最新の環境にするとこのエラーは出ないかもしれません。
pip.ini
とりあえず、1つの解決方法を試してみます。まずは、仮想環境のディレクトリの直下に「pip.ini」というファイルを作成します。これは pip コマンドの設定ファイルです。
この「pip.ini」の「global」セクションに、信頼されるホストとして「pypi.org」、「pypi.python.org」、「files.pythonhosted.org」を記述します。
そして、再度「pip install jupyter」を実行してみたところ、うまく行きました。これは筆者の環境でうまく行ったものの、読者のみなさんの環境ではうまく行かない可能性もあります。2021年11月現在、Pythonの最新バージョン 3.10 は OpenSSL 1.1.1 が必須になったという記事もありますので、Python 3.9.x と pip 21.x.x~23.x.x あたりはバージョン互換性的な問題があるのかもしれませんね。
Jupyter Notebookの起動
jupyter notebook
仮想環境のプロンプトで「jupyter notebook」を実行するとローカルホスト(127.0.0.1)でポート番号 8888 の Webサービスが起動されます。同時に、標準ブラウザを起動して、その Webサービスにアクセスします。
下図が jupyter notebook のホーム画面です。
Python開発環境
Pythonの開発環境を開くには、「Files」タブの右のほうに表示されている「New」のプルダウンボックスをクリックして、「Python 3」を選択します。
すると、ブラウザの別タブを開いて、下図のようなラインエディタが表示されます。
Hello Jupyter World!
print('Hello Jupyter World!')
Jupyter Notebookのラインエディタに「print('Hello Jupyter World!')」と入力して Enter キーを押します。コマンドプロントやターミナルだと、Enter キーを押したとたんに Hello Jupyter World! と表示されますが、Jupyter Notebookは空の行が追加されます。
それでは、続いて計算式や、計算結果を print する命令も記述していきます。
Jupyter Notebookで実行(Run)する
記述したコードを実行するには、「▼ Run」ボタンをクリックします。
上図の「a = 5244118 * 326」の計算結果「a」を書式文字列(f文字列)で修飾して表示させるように変更してみましょう。「print(a)」を「print(f'{a:,}')」に変更して、Shiftキーを押しながら Enterキーを押下するとそのブロックが実行されます。
Jupyter Notebookの保存
Saveボタン
Jupyter Notebook の「File」メニュー、またはその下に表示されているフロッピーディスク(!)のアイコンをクリックすると編集したコードを保存することができます。
Jupyter Notebookの終了
Logoutボタン
Jupyter Notebook の右上方の「Logout」ボタンをクリックして Jupyter Notebook をログアウトします。
Jupyterサービスの停止
そして、コマンドプロンプトに戻って、Ctrlキーと「C」キーを同時に押して、Jupyter NotebookのWebサービスを停止させます。ブラウザから Logout する前に Jupyter Notebookを停止するとエラー表示されますが、あまり気にすることはありません。ただし、コードを編集中に停止してしまうとコードが保存されない可能性があるので、ちゃんと Logoutしてから停止するように気をつけたほうが良いでしょう。
今回はJupyter Notebookの準備編でした。次回は、Jupyter Notebookを使ってレポートを作成する方法をご紹介いたします。それではまた!