GGPT Master GuideAIを、日々の作業に。

CodexでCSVをJSONに変える

公開 2026-09-12 更新 2026-09-12

CodexでCSVをJSONに変える

関連テーマ:表とデータの内容を確かめる

表をアプリへ渡すため、CSVをJSONへ変えたいことがあります。Codexへ変換を頼むときは、ファイル名だけでなく、IDを文字列で残すか、空欄をどう表すかを決めておくと、情報の変化に気づきやすくなります。

JSONは項目名と値を組み合わせて表す形式です。この記事では二件の小さなCSVを、同じ二件の一覧へ変換します。Excelの書式や数式を引き継ぐ変換ではありません。

値の扱いを決める

id,title,note
001,読書会,
002,買い物,付箋

今回の条件は、すべて文字列、空欄は空文字 ""、行の順序を保持、です。001 を数値の 1 に変えません。空欄を null に変える処理も行いません。

元の値 今回のJSON 理由
001 "001" 識別用の文字列を保持
空欄 "" 元の空欄をそのまま表す
読書会 "読書会" 日本語を保持

各段階で確認してから、次の操作へ進みます。

図解CodexでCSVをJSONに変える:進める順番
  1. 1型を決める先頭ゼロと空欄の扱いを明記します。
  2. 2別名へ変換元の順序と各値を保持します。
  3. 3読み直して照合構文と情報の一致を別々に確認します。

具体的な依頼と、結果の確かめ方は本文にあります。

型と空欄のルールを決め、変換後に読み直して照合します。「JSONとして開ける」と「情報が同じ」は別の確認です。

出力の形を指定する

このCSVをJSONへ変換する案を示してください。
先頭行を項目名にし、各データ行を一つのオブジェクト、全体を配列にします。
id,title,noteは全て文字列、空欄は空文字、先頭ゼロと行順を保持します。
列数の不一致や重複した列名があれば、変換せず報告してください。
まず最初の二件を回答に示し、元ファイルは変更しません。

期待する形は次です。

[
  {"id": "001", "title": "読書会", "note": ""},
  {"id": "002", "title": "買い物", "note": "付箋"}
]

列名が同じCSVを無条件に辞書形式へ読み込むと、値を失う可能性があります。変換前の列名と列数をCSV点検で確認します。

短いコードで確かめる

次は、上の内容をメモリ上で変換するPythonの例です。

import csv
import io
import json

sample = 'id,title,note\n001,読書会,\n002,買い物,付箋\n'
rows = list(csv.DictReader(io.StringIO(sample)))
result = json.dumps(rows, ensure_ascii=False, indent=2, allow_nan=False)
print(result)

Python 3.12.14で二件、先頭のIDが "001"、メモが空文字であることを確認しました。このコードは固定した小さな入力用です。一般のCSVの列不足・重複列名・巨大ファイルをすべて検査する道具ではありません。

保存して読み直す

確認した条件でitems.jsonへ保存してください。
元のCSVは変更せず、同名の出力がある場合は上書きせず報告します。
保存後のJSONを読み直し、件数・項目名・各値・順序を元データと照合してください。
日本語はUTF-8で保存します。検査できなかった条件も示してください。

出力先のアプリが数値や null を要求するなら、その仕様に合わせた別の変換条件が必要です。見た目だけで決めず、どの列をどの型にするか確認します。

変換を取り消すときは元のCSVを使用し、生成したJSONだけを退避します。読み込みエラーはJSONの点検へ進めます。ここでの実測はPython処理であり、Codexによる変換操作や外部アプリへの取り込みは未検証です。

このテーマを続けて読む

列ずれ・重複・型・文字コードを確認し、元の情報を残して変換します。

表とデータの内容を確かめるの記事をまとめて見る