ノートブックの使い方
このレッスンでできるようになること。分析を小さな単位に切って、順番に実行しながら進める考え方が身につきます。
データ分析は、書いて実行して結果を見て、また書く、の繰り返しです。この進め方を支えるのがノートブックという道具です。コードをセルという小さなかたまりに分け、セル単位で実行し、その下に結果が出ます。Jupyter Notebook や Google Colab が有名です。
なぜセルに分けるのかというと、分析では前の結果を見てから次に何をするかを決めるからです。CSV を読み込むセル、中身を眺めるセル、条件で絞るセル、と分かれていれば、絞り込みの条件を変えたいときに絞り込みのセルだけ実行し直せます。何十万行の読み込みを毎回やり直さずに済みます。
ノートブックには気をつける点が1つあります。セルは上から順に実行するとは限らないので、実行した順番によって変数の中身が変わります。下のセルを実行してから上のセルを直すと、頭の中の状態と実際の状態がずれます。分析が混乱したら、上から順に全部実行し直すのが確実です。
このコースの演習は、ノートブックそのものではなく関数の形で書きます。ただし考え方は同じです。1つの関数を、意味のあるまとまりごとに数行ずつ書き、途中の値に名前を付けていきます。
Python
import pandas as pd
sales = pd.Series([3600, 7800, 4500])
subtotal = sales.sum()
average = sales.mean()途中に名前を付けておくと、あとから「合計はいくつだったか」を確かめやすくなります。1行に詰め込むほど賢いコードではありません。分析では、途中を見られることのほうがずっと価値があります。この演習では3店舗の売上額から合計と平均を、それぞれ名前を付けながら計算します。
要件
- 受け取ったリストを pd.Series にする
- 合計は sum、平均は mean、件数は len で求める
- {"total": 合計, "average": 平均, "count": 件数} の形で返す
- 合計と件数は int() で整数に直してから返す
入出力例
summarize_amounts([3600,7800,4500]) → {"average":5300,"count":3,"total":15900}
summarize_amounts([7200,4200]) → {"average":5700,"count":2,"total":11400}ヒント
編集 ゆめさく編集部