現在主催しているスマート農業勉強会で、アプリの開発をしているのですが、その関係で、以前から農水省が公開している青果物の市況データを手元で触っていました。データの存在は知っていたし、ダウンロードして眺めたこともあったのですが、「ちゃんと分析しよう」となるとそれなりに準備が必要で、なんとなく後回しにしていました。
最近 Claude Code を使い始めて、試しにこのデータを題材に雑に指示を出してみたところ、思っていた以上のことをやってくれました。データの構造の把握、分析、可視化、HTMLレポートの生成まで、ほぼ会話しながら進めただけです。今回はその体験をそのまま書いておこうと思います。
まず、フォルダ名から始まった
最初にやったのは、データを保存するフォルダを作ることです。「農水省のサイトから市況の生データをダウンロードするフォルダを作りたいので、英語名を考えて、フォルダを作成してください」と投げたところ、こんな返答が来ました。
maff_raw_market_dataという名前を提案します。maffは農水省(Ministry of Agriculture, Forestry and Fisheries)の略称、rawは加工前の生データ、market_dataは市況データを示します。
そのままフォルダを作ってくれました。こういう「命名の根拠を説明してくれる」ところが地味に好きです。自分で考えると意外と悩むので。
データを開けたら ZIP だった
つづいて農林水産省のウェブサイトの「青果物卸売市場調査(日別調査)」(https://www.seisen.maff.go.jp/seisen/bs04b040md001/BS04B040UC020SC001-Evt007.do)からダウンロードしたファイルを Claude Code が読もうとしたところ、すぐに「これCSVじゃなくてZIPですね」と気づきました。拡張子は .csv なのに、中身は ZIP 形式で、さらにその中に日付ごとの CSV が複数入っている構造です。
2025_04_上旬.csv(実はZIP)
└ 20250401ky.csv ← 2025年4月1日・全国野菜
└ 20250401kk.csv ← 2025年4月1日・全国果実
└ 20250401ty_1301_tokyo.csv ← 東京市場・野菜
└ 20250401ty_2701_oosaka.csv ← 大阪市場・野菜
└ ...(市場ごとに続く)
さらに文字コードが Shift-JIS だったのですが、これも自分で検知して対処してくれました。こちらは何も指示していません。「開いたら文字化けしていたので Shift-JIS として読み直しました」という感じで、勝手に解決されていました。
こういう「よくある罠」を自律的に乗り越えてくれるのは、実際に使ってみると相当助かります。
「いい感じに分析して、可視化も」で6枚グラフが出てきた
データの構造が把握できたところで、「なんかいい感じに市況データを分析してください。可視化も」とだけ伝えました。基本は任せる、という指示です。
しばらくすると、6枚のグラフが生成されました:
野菜総計の日別取引量・価格推移(時系列)

主要野菜8品目の月別平均価格推移(折れ線)

品目×月の価格ヒートマップ(旬の可視化)

主要5品目の産地別取引シェア(円グラフ)

価格変動性ランキング TOP15(変動係数)

主要4品目の月別価格分布(箱ひげ図)

「いい感じに」という雑な指示に対して、どの切り口で見るかを自分で考えて選んでくれています。「取引量上位品目を先に出して、それをベースにヒートマップと箱ひげ図を作る」という分析の流れも、こちらが設計したわけではありません。
グラフと一緒に、こんなサマリーも出力してくれました:
分析期間 : 2025-04-01 〜 2026-04-10
総営業日数: 272 日
品目数 : 54 品目(野菜)
野菜総計 価格統計(円/kg):
平均: 275.7
最高: 388.0 (2025-09-03)
最低: 185.0 (2025-09-17)
取引量 TOP5:
1. キャベツ 計 429 百万kg 平均 91 円/kg
2. たまねぎ 計 345 百万kg 平均 180 円/kg
3. はくさい 計 344 百万kg 平均 78 円/kg
4. だいこん 計 256 百万kg 平均 103 円/kg
5. ばれいしょ 計 202 百万kg 平均 235 円/kg
「市場間比較をHTMLレポートで」も一発だった
次に「市場間比較をして、HTMLファイルでレポートを書いてください。内容は任せます」と投げました。
このとき Claude Code がやったこと:
- 37本のZIPから、全14市場分のCSVを展開・結合(520,121行)
- 市場ごとの取引量・価格を集計
- 東京市場を基準にした価格比(東京比%)を計算
- 各市場と東京の価格相関係数を算出
- グラフ6枚を生成してbase64でHTMLに埋め込み
- スタイル付きのHTMLレポートを1ファイルに出力(637KB)
生成されたHTMLは、一部画像が表示されないエラーがありましたが、基本的にはブラウザで開くだけで完結していて、外部ファイルへの依存がありません。KPIカードや色分けされた表、インサイトのコメントまで含まれています。
ここで地味に感心したのは、14市場を「北から南の地理的順」に並べていたことです。こちらは特に指示していませんでしたが、「市場間を比較するなら地理的な並びにする」という判断を Claude 自身でしてくれていました。
使ってみて感じたこと
指示は雑でよかった
「英語名考えて」「いい感じに分析して」「HTMLレポートにして」——こんな粒度の指示でも、やることを自分で決めて進めてくれます。最初から分析設計を全部決めなくてよいのが、探索的なデータ分析との相性がいいと感じました。
途中の判断を見ていると面白い
文字コードの自動検知、ZIPの入れ子構造への対処、地理的な市場の並び替えなど、こちらが気づいていなかった判断をいくつかしてくれていました。「なぜこうしたか」を説明してくれるので、結果だけでなくプロセスも把握できます。
データの前処理が一番助かった
Shift-JIS、ZIP入れ子、政府系フォーマット特有の罠——こういう「やる気を削ぐ作業」を勝手に乗り越えてくれるのが、実際のところ一番助かりました。分析の本題に集中できます。
おわりに
農水省の市況データ自体は以前から公開されていたものです。データが変わったわけではなく、アクセスのコストが下がったということだと思います。「ちゃんとやろうとすると大変」だったものが、「とりあえず投げてみる」で動くようになった感覚です。


コメント