ChatGPTでCSVを分析する方法|売上集計・グラフ・説明文まで
ChatGPTで売上CSVを分析し、集計表・グラフ・説明文を作る手順を解説。小さなCSV例を使い、返品、取消、受注件数、平均受注額の定義と検算方法を示します。

目次
OpenAIによると、ChatGPTのデータ分析では、売上CSVを読み込んで集計し、表やグラフを作れます。数字を確認したうえで説明文までまとめれば、会議で「どの商品が、どのくらい変わったか」を伝える資料に使えます。
作業は、CSVの準備、条件の指定、集計、グラフ、説明文の順です。ここでは小さな架空CSVを使い、返品をマイナス売上として含め、取消とテスト注文を除く方法でそろえます。利用できる分析機能や回数はプラン・モデル・ワークスペース設定などで変わります。
CSVから報告まで
CSV整形 → 分析の問い → 集計 → グラフ → 事実と解釈 → 検算
AIが示した増減は、集計表と元CSVを照らして事実かどうかを確かめます。増減の原因は、施策、在庫、価格、営業日数など別の資料へ戻って確認します。
CSVを用意し、一行が何を表すかをそろえる
分析を始める前に、元ファイルを複製します。共有ファイルなら版履歴と復元方法を確認し、作業用のコピーを作ります。元のCSVを残しておけば、集計条件を間違えてもやり直せます。
店舗の売上をまだ手書きで記録しているなら、会計と売上記録をまとめるPOSレジの導入目安も参考になります。
次に、AIが扱いやすい形へ整えます。OpenAIの案内でも、列名を明確にし、一行に一件を置き、関係のない複数の表や途中の空行を避けることが勧められています。
一行が一注文なのか、一つの商品明細なのかを先に確かめます。この記事の例は、一行を一つの売上・返品明細とします。同じ注文に複数の商品があれば、注文IDは複数行に現れます。
次の点もそろえましょう。
- 一行が一つの受注、注文、明細のどれを表すか
- 列名が短く、意味を説明できるか
- 金額の単位と税込・税抜
- 日付の形式と対象期間
- 商品名、商品コード、担当、地域の表記揺れ
- 空欄、重複、返品、取消、値引きの扱い
- 合計行や小計行がデータに混ざっていないか
個人名、メールアドレス、電話番号、顧客名が分析の問いに不要なら、削除するか役割名・匿名IDへ置き換えます。未公開売上や顧客情報を外部AIへ入力できるとは限りません。会社が承認した環境とワークスペース設定を確認し、使えない場合は架空データで手順だけ試します。
列の意味と除外条件をメモする
列名の意味や金額の単位、空欄の扱いを短い表にまとめ、CSVと一緒に渡します。
| 列名 | 意味 | 確認すること |
|---|---|---|
| sales_date | 売上・返品の計上日 | 今回はこの日付で期間を分ける。元CSVの受注日とは区別する |
| order_id / line_id | 注文ID / 明細ID | 一注文の複数明細を、重複行と取り違えない |
| net_sales | 値引き後の売上 | 税抜か税込か、返品を引いているか |
| product_group | 商品群 | 表記揺れと統合ルール |
| status | 明細の状態 | completedとreturnを含め、cancelledとtestを除く |
スマホでは表を横にスクロールできます。
AIに列名だけを見せると、意味を推測することがあります。「sales」が受注額なのか入金額なのかで結論は変わります。正式な定義が分からない列は、担当者へ確認するか、分析対象から外します。
除外条件も先に決めます。「statusが取消なら除外」「返品はマイナス売上として含める」「テスト注文は除外」のように書きます。あとから条件を変えた場合は、グラフと説明文も作り直します。
分析で知りたいことを一つに絞る
「何か傾向を見つけて」だけでは、会議で使わない話まで返ってきます。会議で決めたいことから、比べる対象を絞ります。
問いは次の形にします。
読み手: 営業部長
決めること: 来月に重点を置く商品群
対象期間: 2026年4月1日〜6月30日
比較: 2026年1月1日〜3月31日
指標: 返品をマイナスとして含む税抜売上、受注件数、平均受注額
集計: sales_dateで期間を分け、cancelledとtestを除く
件数: completedの注文IDを重複せず数える。返品行だけでは件数を増やさない
平均: 返品を含む税抜売上÷受注件数。分母が0なら計算不能とする
分類: 商品群
出力: 集計表、差額と増減率、棒グラフ、会議向け四行説明
確認: 使用列、除外条件、計算方法、欠損・重複、前提を示す
禁止: CSVにない原因や施策効果を断定しない
一つの依頼で全部を完成させず、最初に使用列と集計条件を返してもらいます。期間、単位、除外条件が合っていることを確認してから計算へ進みます。
データが大きい、複数の表が混ざる、画像化された表しかない場合は、AIが全体を正確に読み取れないことがあります。対象シート、列、期間を狭めるか、テキストとして扱えるCSVへ変換します。
小さなCSVで、期待する集計を確かめる
次は説明用の架空データです。金額はすべて税抜円、一行が一明細です。O101のように同じ注文IDが二行あっても、明細IDが違えば別の商品明細です。
sales_date,order_id,line_id,product_group,net_sales,status
2026-02-05,O101,L01,A,10000,completed
2026-02-05,O101,L02,B,5000,completed
2026-03-10,O102,L03,B,20000,completed
2026-03-20,O102,L04,B,-5000,return
2026-04-05,O201,L05,A,12000,completed
2026-04-05,O201,L06,B,18000,completed
2026-05-10,O202,L07,B,27000,completed
2026-06-01,O202,L08,B,-3000,return
2026-06-10,O203,L09,B,9000,cancelled
2026-06-11,TEST01,L10,A,9000,test
この例の受注件数は、completedの注文IDを重複せずに数えます。返品は記録された期間の売上から引き、件数は増やしません。平均受注額は「返品を含む税抜売上÷この受注件数」と定義します。過去の注文の返品を当期に計上するデータでも、同じ定義を使うか、別の指標にするかを先に決めてください。
| 期間・商品群 | 税抜売上 | 受注件数 | 平均受注額 |
|---|---|---|---|
| 1〜3月・全体 | 30,000円 | 2件 | 15,000円 |
| 4〜6月・全体 | 54,000円 | 2件 | 27,000円 |
| 1〜3月・A | 10,000円 | 1件 | 10,000円 |
| 4〜6月・A | 12,000円 | 1件 | 12,000円 |
| 1〜3月・B | 20,000円 | 2件 | 10,000円 |
| 4〜6月・B | 42,000円 | 2件 | 21,000円 |
1〜3月の全体は10,000+5,000+20,000−5,000=30,000円です。4〜6月は12,000+18,000+27,000−3,000=54,000円となります。取消とテストの2行は含めません。全体の差額は24,000円、増加率は24,000÷30,000=80%です。
商品群別の件数を足すと、複数の商品群を含む注文を二度数えます。全体の受注件数は、全体の注文IDから数え直します。明細の行数を受注件数として使わない点も確かめましょう。
集計表が合ってからグラフを作る
グラフの前に、数値だけの集計表を作ります。最低限、次を並べます。
- 対象期間の売上合計
- 比較期間の売上合計
- 差額と増減率
- 受注件数
- 平均受注額
- 欠損、重複、除外した行の件数
元CSVの合計と一致しない場合は、グラフへ進みません。日付の境界、税、返品、取消、重複、小計行を確認します。
グラフは、問いに合わせて選びます。
| 知りたいこと | 向くグラフ | 注意すること |
|---|---|---|
| 時間の推移 | 折れ線グラフ | 日別・月別などの区切りをそろえ、データがない日も確認する |
| 商品・地域の比較 | 棒グラフ | 並び順と単位を明記する |
| 少数項目の構成比 | 円グラフ | 項目が多い場合は棒へ変える |
| 二つの指標の関係 | 散布図 | 相関を原因と書かない |
スマホでは表を横にスクロールできます。
軸を途中から切る、単位の違う二軸を重ねる、項目数の多い円グラフを使うと、見た目で誤解を招きます。タイトルには対象期間と指標を入れ、凡例だけを頼りに、何のグラフかを読み手に推測させないようにします。
説明文には、分かったことと次に調べることを書く
AIへ「グラフを説明して」と頼むと、数字の変化と原因の推測が混ざることがあります。四行に分けると確認しやすくなります。
- 事実:どの指標が、どの期間と比べてどう変わったか
- 解釈:その変化が、会議で決めたいことにどう関わるか
- 次に確認すること:原因を確かめるために必要な資料や担当者
- 注意点:返品、在庫、営業日数など、このCSVだけでは分からないこと
架空の説明例は次のようになります。
商品群Bの4〜6月の税抜売上は42,000円で、1〜3月の20,000円から22,000円増えています。受注件数は2件のまま、定義した平均受注額が10,000円から21,000円になっています。値上げや商品構成、施策の効果が原因かは、このCSVだけでは分かりません。来月の重点商品を決める前に、明細の数量・単価や在庫状況を確認します。
CSVが示すのは、記録された項目の増減です。広告施策、商談品質、天候、競合動向が原因かどうかは、別の資料と担当者の確認が必要です。AIには「原因候補」と「確認に必要な情報」を出してもらい、断定はさせません。
コード・前提・グラフ軸を確認する
ChatGPTがPythonを使った場合は、生成されたコード、出力、前提を確認できます。次の点を質問すると、計算が自分の意図に合っているかを確かめられます。
- どの列を数値へ変換したか
- 日付をどのタイムゾーン・形式で扱ったか
- 欠損値を除外、ゼロ、補完のどれで扱ったか
- 返品と取消をどう処理したか
- グループ化と並び替えをどう行ったか
- 増減率で比較期間がゼロの場合をどう扱ったか
「この方法を選んだ理由」「別の方法なら結果がどう変わるか」も聞きます。AIが最初に選んだ計算方法やグラフが、自分の意図と合うとは限りません。
OpenAIによると、データ分析用のPython環境から外部WebへのリクエストやAPI呼び出しはできません。必要なデータは利用権限を確認してアップロードするか、利用可能な接続先を使います。
別の方法で合計と件数を検算する
同じAIへ同じ質問を言い換えて再度聞くだけでは、独立した検算になりません。元CSVと、ExcelのSUM、SUMIFS、ピボットテーブルなど別の方法で照合します。
最低でも、合計、件数、対象期間、除外行を別の方法で確認します。差が出たら、次の順に見ます。
- フィルターの対象期間
- 取消・返品・テスト行
- 重複した明細ID(同じ注文IDの別明細とは区別)
- 税込・税抜と通貨
- 空欄、文字列になった数字
- 小計・合計行の混入
検算結果は、報告の最後に短く残します。上の例なら「対象8明細の合計と一致」「取消1行・テスト1行を除外」「返品はマイナスとして含む」のように、読み手が前提を確認できる言葉にします。
個人情報と未公開売上を守る
売上CSVには、顧客名、担当者名、連絡先、注文内容、値引き、未公開の業績が含まれます。AIへ入力する前に、勤務先の規程、契約プラン、保存設定、接続先、管理者の許可を確認します。
OpenAIはBusiness、Enterprise、APIのビジネスデータをデフォルトでモデル学習に使わないと案内しています。ただし、利用する製品と契約が該当するか、自社が入力を許可しているかは別の確認です。
承認済み環境がない場合は、列名と架空データだけを使います。実データを匿名化する場合も、少数の大型受注や地域、日付の組み合わせから顧客を推測できないかを確認します。正式な報告は、承認済みの環境と元CSVで作り直します。
グラフと説明を一枚の報告資料にまとめる
会議へ出すときは、グラフと判断に必要な説明を一枚にまとめます。次の内容をそろえます。
- 答えた問い
- 対象期間と比較期間
- 集計条件と除外条件
- グラフ
- 事実、解釈、次の確認、注意点
- 検算結果
- 元CSVの所有者と更新日
複数の会議録や調査資料と組み合わせて報告資料へ広げたい場合は、会議・調査データから根拠つきの一枚を作る手順を確認できます。
次のCSVでも再現できるか確かめる
一回グラフができても、次のCSVで列名や期間が変わると止まることがあります。別の月のデータで、問い、集計、グラフ、説明、検算をやり直します。
自分で集計条件を説明し、元CSVとの違いを見つけられるなら、まず独学で続けられます。毎回同じ作業でつまずくなら、何を教えてもらう必要があるかをはっきりさせます。
複数のAIツールや仕事を広く学び、自分で学ぶ順番を決めたいなら、DMMが候補になります。作ったグラフや説明文を見ながら、修正点と進め方を個別に相談したいならbyTechも比較候補です。説明会では、売上CSVの集計やグラフ作成について、どこまで質問できるかを確かめてみましょう。
何が分かったかに加えて、対象期間や計算方法も説明できる資料に仕上げましょう。使った指示と確認項目を残せば、翌月のCSVでも同じ手順で作業できます。
参考資料・出典
対応ファイル、分析機能、グラフ形式はモデル、プラン、ワークスペース設定で変わります。個人情報や未公開売上は勤務先の規程に従い、集計値と説明は元CSVで確認してください。
- Data analysis with ChatGPT(確認日:2026年10月22日)
- OpenAIにおけるエンタープライズプライバシー(確認日:2026年10月22日)


