CSVをカテゴリ別に合計する方法|SQL不要・ブラウザだけで完結

手元のCSVファイルで「部門ごとの売上合計」や「商品カテゴリ別の注文数」を出したい。やりたいことはシンプルなのに、検索すると出てくるのはpandasのgroupby解説やSQLのGROUP BY入門ばかり——環境構築の段階で手が止まった経験はないでしょうか。

この操作は「グループ集計(Group By + Sum)」と呼ばれます。1万行の売上CSVがあるとして、各行に「部門」と「売上金額」の列があれば、部門ごとにまとめて売上を合計する。1万行が5行になる。それだけの処理です。

SQLもPythonも不要で、ブラウザだけで同じ結果を得る方法が3つあります。

注記: 第三者ツールの仕様は執筆時点(2026年3月)の情報です。最新の制限や機能は各ツールの公式サイトで確認してください。

方法手軽さ複数列グループ化グラフデータの扱いエクスポート
LeapRows Analyze(※筆者開発)★ 簡単対応対応ブラウザ内処理(送信なし)CSV, Excel, Parquet
Googleスプレッドシート★★ やや手間対応対応Googleサーバーに送信CSV, Excel
DataConverter.io★ 簡単対応非対応サーバーに送信CSV

LeapRowsでCSVをカテゴリ別に集計する(アカウント不要・ブラウザ完結)

ブラウザ上で完結するツールを使えば、ファイルをドラッグ&ドロップするだけでカテゴリ別の合計が出ます。アカウント作成もインストールも不要です。

LeapRows(※筆者開発ツール)は、DuckDB-WASMを使ってCSVをブラウザ内で処理します。データはサーバーに送信されません。

手順: 売上CSVを部門別に集計する

ステップ操作設定内容
1ファイルアップロードLeapRowsにCSVをドラッグ&ドロップ
2タブ切替上部の「Analyze」タブを開く
3集計軸設定「Rows」に集計列を設定(例: 部門)
4数値列設定「Values」に数値列を設定し、「Sum」選択(例: 売上金額)
5結果表示カテゴリ別合計がすぐに表示(CSVやExcelでエクスポート可)

5クリックで完了します。

2軸でのクロス集計もできます。「Rows」に「部門」と「四半期」の2列を設定すれば、部門×四半期の売上が一覧で表示されます。集計方法はSum以外にCount(件数)、Average(平均)、Min、Maxにワンクリックで切り替え可能です。

業務データや顧客情報など機密性の高いCSVを扱う場合、データがサーバーに送信されないブラウザ完結型のツールは安全面で有利です。社内のセキュリティポリシーで外部サービスへのデータ送信が制限されている場合にも使えます。

Googleスプレッドシートのピボットテーブルで集計する

Googleアカウントがあれば、Googleスプレッドシートのピボットテーブル機能でCSVのグループ集計ができます。普段からGoogleのサービスを使っている人にはもっとも馴染みのある方法です。

手順:

  1. Googleスプレッドシートを開き、「ファイル」→「インポート」→「アップロード」からCSVを選択する
  2. データ範囲を選択して「挿入」→「ピボットテーブル」→「新しいシート」を選ぶ
  3. 右パネルの「行」にグループ化する列(例: 部門)、「値」に集計対象の列(例: 売上金額)を追加する(デフォルトでSUMが選択される)

ピボットテーブルエディタの「候補」セクションにデータに基づいた集計パターンが自動で提案されます。ピボットテーブルが初めてなら、候補から選ぶのが手軽です。

注意すべき点:

  • 行数制限。 CSVの読み込みは問題ないものの、ピボットテーブルの操作は10万行前後から重くなります。シート全体の上限は約1,000万セル——50列のCSVなら20万行で上限に達します。
  • データの送信。 CSVはGoogleドライブにアップロードされます。個人的なプロジェクトなら問題ありませんが、顧客データや社内の機密情報を含む場合は注意が必要です。
  • 区切り文字。 セミコロン区切りのCSV(ヨーロッパ圏のシステムからのエクスポートなど)は、インポート時に区切り文字を手動で指定しないと1列にまとまってしまいます。

エクスポート: ピボット結果のシートを表示した状態で「ファイル」→「ダウンロード」→「カンマ区切り形式(.csv)」を選べば、集計結果をCSVとして保存できます。

DataConverter.ioでシンプルに集計する

DataConverter.ioは、グループ集計に特化したシンプルなオンラインツールです。ピボットテーブルの設定やグラフ機能はなく、グループ化→集計→ダウンロードだけに絞り込まれています。

手順:

  1. DataConverter.ioのGroup Fieldsツールにアクセスする
  2. CSVデータを貼り付けるか、ファイルをアップロードする
  3. グループ化する列を選択する
  4. 集計関数を選ぶ——Sum、Count、Average、Min、Max
  5. 結果をCSVとしてダウンロードする

「部門別の売上合計だけ出せればいい」という場合、1分かからず完了します。

知っておくべきトレードオフ:

  • クロス集計(行と列の2軸)には対応していません。フラットなグループ集計のみです。
  • グラフや可視化機能はありません。
  • データはサーバーに送信されます。機密データでの利用は避けたほうが安全です。
  • 単発の集計タスクに向いています。繰り返し使う場合や大きなファイルを扱う場合は、ブラウザ完結型のツールのほうが柔軟です。

単純な合計の先へ——列を加工してから集計するとインサイトが見える

グループ集計は、CSVに「ちょうどいい分類列」がすでにある場合にそのまま使えます。ただ、実際のデータはそう都合よくできていないことが多いものです。

「URLをディレクトリ単位で集計したい」「日付を月ごとにまとめたい」と思った瞬間、元のCSVにはその粒度の列がないことに気づきます。解決策は、新しい列を追加して元データを加工し、その列でグループ集計することです。

URLをディレクトリ単位で集計する

Webアクセスログに URL 列があり、値は /blog/2024/seo-tips/blog/2025/csv-guide/products/pricing のように細かいパスです。URL単位でグループ化しても1ページ1行になるだけで、全体像が見えません。

やることは、URLの先頭ディレクトリ(/blog//products/ など)を抽出する列を追加し、その列でグループ化してページビューをSumする。LeapRows(※筆者開発ツール)では「Add Column」機能で文字列の部分抽出ができます。

数百行が数行に集約され、「ブログと製品ページのどちらがトラフィックを稼いでいるか」が一目でわかります。データの羅列ではなく、判断材料になる集計表です。

日付を月や四半期にまとめて集計する

売上CSVの日付が 2024-01-152024-01-222024-02-03 と日単位で記録されている場合、そのままグループ化すると日別の合計になります。数百行の日別データでは傾向が読めません。

年月(2024-01)や四半期を抽出する列を追加し、その列でグループ化してSumすれば、月次推移や四半期比較が見えるようになります。季節性の発見、前月比の変化、成長トレンドの確認——ここまで来て初めて「集計」が「分析」になります。

数値を範囲(バケット)に分けて集計する

注文金額が500円から5万円まで散らばっているCSVで、金額そのままグループ化しても意味のある結果にはなりません。

「0〜5,000円」「5,001〜10,000円」「10,001〜20,000円」「20,001円以上」のようなバケットを作る列を追加し、その列でグループ化して件数をCountしたり、売上をSumしたりします。売上の分布——少数の高額注文が売上の大半を占めるのか、小口注文の積み上げなのか——が数字で見えます。

共通するパターン

3つの例に共通するのは、加工 → グループ化 → 集計 という流れです。インサイトを生むのは加工のステップであり、グループ集計はその結果を数値にするエンジンです。

LeapRows(※筆者開発ツール)やGoogleスプレッドシートなど、ほとんどのブラウザ集計ツールは列の追加や数式変換に対応しています。ツールごとに操作は異なりますが、「集計軸がなければ自分で作る」という考え方は共通です。

CSV集計でよくある失敗とその対処法

CSVのグループ集計で初めてつまずきやすいポイントをまとめます。

問題原因対処法予防
数値にテキスト混在通貨記号・「N/A」・空文字集計前にデータ型確認インポート時の自動検出確認
区切り文字が違うセミコロン区切り・カンマ小数点インポート時に区切り文字指定ヨーロッパ圏ツールは確認必須
ヘッダー重複複数CSVをファイル途中で結合結合前に重複除去 or マルチファイル対応ツール使用定期エクスポート時に注意
文字化けUTF-8以外のエンコーディング正しいエンコーディング指定で再インポート出力ツールのエンコード確認

検証方法: SQLやPythonでクロスチェックできない場合、元のCSVを1カテゴリでフィルタして手計算で合計し、ツールの出力と比較するのが確実です。「部門=マーケティング」の行だけ抜き出してSumを取り、ツールの結果と一致すれば集計ロジックは正しく動いています。

まとめ

3つの方法で、CSVのカテゴリ別合計がコーディング不要で得られます。

  • LeapRows(※筆者開発ツール)はブラウザ内で処理が完結し、データが外部に送信されません。機密データや複数列の集計に向いています。
  • GoogleスプレッドシートはGoogleアカウントがあれば馴染みやすい選択肢ですが、大きなファイルでは動作が重くなります。
  • DataConverter.ioは単発のグループ集計を最短で済ませたい場合に便利です。

単純な合計で済まない場合は、列を加工して集計軸を自分で作ってみてください。URLをディレクトリ別に、日付を月別に、金額を価格帯別に——加工してからグループ集計すると、CSVの数字がビジネス上の判断材料に変わります。