PythonでCSV集計をしてみよう|pandasのread_csvを使ってSQL感覚で実装

SNOW

2026-04-05

並び替えとカラム名の整理

集計しただけだと少し見づらいので整えます。

summary.rename(columns={"amount": "total_amount"}, inplace=True)
summary = summary.sort_values(by="total_amount", ascending=False)

売上順に並び替えることで、重要な顧客が一目で分かります。

実務ではこの並び替えが意思決定に直結します。


Excelに出力する

最後にExcelへ出力します。

with pd.ExcelWriter("customer_summary.xlsx") as writer:
    summary.to_excel(writer, sheet_name="顧客別集計", index=False)

この時点で、実務レベルのレポートが完成します。

CSV → 集計 → Excel出力まで、すべてPythonだけで完結しています。

処理時間も数秒レベルです。


実務で使うときのポイント

実務で使う場合は、いくつか意識しておくと楽になります。

  • ファイル名を日付付きにする
  • エンコーディング(utf-8 / cp932)を確認する
  • 欠損データ(NaN)を事前に処理する

また、データが1万件、10万件と増えても同じコードで対応できます。

Excelより圧倒的に安定します。


SQL経験者ほどハマる書き方

正直なところ、SQLに慣れている人ほどpandasはすぐ理解できます。

groupbyはそのままGROUP BYですし、sumはSUMです。

違いは「テーブルではなくDataFrameを操作する」という点だけです。

一度この感覚をつかむと、Excelに戻れなくなります。

個人的には「軽いデータ分析ならSQLより速い」と感じています。


出典:いまにゅのAIプログラミング塾

まとめ

Pythonとpandasを使えば、CSV集計は非常にシンプルに実装できます。

read_csvで読み込み、groupbyで集計し、Excelに出力するだけです。

SQL感覚で書けるため、学習コストも低いのが特徴です。

まずは今回のコードをそのまま動かしてみると理解が一気に進みます。

小さなデータから始めて、徐々に実務データに広げていくのがおすすめです。


■参考リンク

https://pandas.pydata.org/docs/reference/api/pandas.read_csv.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.groupby.html

Python+Anacondaをインストール|PC作業を自動化する方法|2026年3月版