Python 第 3 弾: pandas と matplotlib で売上レポートを可視化する

12 か月分の売上データを pandas で月次・地域別に集計し、matplotlib で折れ線と構成比のグラフを PNG に出力、要点を Markdown のレポートにまとめます。JupyterLab で試行錯誤してからスクリプトに固める、データ分析の実務の型を体験します。

入門約 60 分Azure 実環境

ラボ概要

このラボでは、経営会議向けの売上レポートを頼まれたデータ担当の想定で、pandas での集計と matplotlib での可視化を実機で身につけます。

ブラウザで開く IDE と JupyterLab に、整形済みの売上データ sales.csv(12 か月・264 行)が用意されています。まず JupyterLab で手を動かしながら「月次推移」と「地域別シェア」を作り、確認できたら report.py にまとめて、誰が実行しても同じ CSV と PNG が出るスクリプトにします。最後に要点を report.md に書きます。

学習目標:

  • pd.to_datetime / dt.to_period("M") / groupby で月ごと・地域ごとに集計する
  • DataFrame.plot と matplotlib で折れ線・棒・円グラフを描き、savefig でファイルに出力する
  • 画面の無い環境で matplotlib.use("Agg") を使う
  • 集計結果を CSV に保存し、レポートの数字と図を対応させる
前提知識:
  • pandas の read_csv と列の計算(「Python でデータ整形」ラボ相当)
完了条件:
  • monthly_summary.csv(12 行、合計 27,074,000、最大月 4,254,000)、monthly_sales.png、region_share.png が出力されていること
  • report.py が pandas と matplotlib で集計・描画していること
  • report.md に最も売れた月(2025-11)と地域別シェアが書かれていること

ラボの構成

  1. 1JupyterLab でデータを眺める
  2. 2月ごとの売上合計を集計する
  3. 3折れ線グラフを描いて PNG に保存する
  4. 4地域別の売上構成比を描く
  5. 5スクリプト report.py にまとめる
  6. 6レポートを書く
  7. 7判定を実行する
  8. 8発展(任意)と考察

詳細な手順は、ラボ開始後に画面内のガイドとして表示されます。

手順のプレビュー(最初のステップ)

1. JupyterLab でデータを眺める

  • ラボ画面の JupyterLab を開く をクリックし(トークンは IDE と同じパスワード)、Python 3 のノートブックを新規作成する
  • 最初のセルでデータを読み込み、形と欠損を確認する
import pandas as pd
df = pd.read_csv("sales.csv", parse_dates=["売上日"])
df["金額"] = df["数量"] * df["単価"]
df.head(), df.shape, df.isna().sum()
  • 264 行 × 6 列(金額を含む)で欠損が無いことを確認する
> 注: parse_dates で日付列を日時型にしておくと、後で「月ごと」にまとめるのが簡単になります。JupyterLab は Shift + Enter でセルを実行します。
残り 7 セクションの手順は、ラボを開始すると画面内に表示されます

構成図

構成図

参考リソース

このラボが対応する試験の模擬問題集

本番形式の問題で理解度を確認できます。各試験とも先頭 15 問は無料です。

DP-900Azure Data Fundamentals練習テスト 2 回・全 160 問