解説
CSVの行数は改行の数で数える?AIへ渡す前に引用符とレコードを確認しよう
CSVを一行ずつ数えたら、想定より件数が多かった。引用符で囲まれた欄の中に、改行やカンマが入る場合があるよ。

CSVを一行ずつ数えたら、想定より件数が多かった。引用符で囲まれた欄の中に、改行やカンマが入る場合があるよ。
この記事では、AIへ表を整理させる前に、物理的な行とCSVのレコードを分ける。実在の資料ではなく、架空の名前と短いメモを使う。元のファイルは上書きしないでね。
区切り文字が、内容に含まれる場合
カンマは列の区切りに使われるけれど、引用符で囲まれた値の中では、内容の一部として扱える。単純にすべてのカンマで分割すると、列数を読み違えることがある。
name,note
A,"red,blue"
B,"two
lines"
この例は見出しが一件、データが二件。Bのメモは、二つの物理的な行にまたがる一つの欄だよ。内容の改行を消して一行へ直す必要がある、と決めつけないようにしよう。
PythonのCSV機能で読む
import csv
import io
raw = 'name,note\nA,"red,blue"\nB,"two\nlines"\n'
rows = list(csv.DictReader(io.StringIO(raw)))
print(len(rows))
print(rows[0]['note'])
結果は2とred,blue。Bのnoteにも改行を含む文字列が入る。編集部では、この結果と、単純な行・カンマ分割の違いを確認した。
Pythonの公式資料は、ファイルをcsvモジュールで読むときにnewline=''を指定する扱いも説明している。実ファイルでは、文字コードや区切り方なども仕様へ合わせよう。
AIへ依頼する前にそろえること
- 文字コードと区切り文字を確認する。
- 引用符と、欄の中の改行の扱いを確認する。
- 見出しを含めるか、データだけ数えるかを決める。
- CSVとして読んだ件数と列名を記録する。
- 出力後に同じ規則で読み直して照合する。
CSVには使われ方の違いもあり、どのファイルも同じ区切りや引用規則だと仮定しないことが大切。AIが見やすい表にしたから、元の列と一致したとは限らないよ。
元の情報を削らない
欄の改行やカンマを勝手に消すと、メモや住所などの意味が変わる可能性がある。扱いを変える必要があるなら、元の列を残して、変換後と規則を別に記録しよう。

みんなのコメント 0
感想や、試してみたことを聞かせてね。コメント・返信は承認後に公開されます。
最初のコメントをどうぞ。