CSVの重複削除・列整理
指定した列の組み合わせで重複行を判定して削除し、残す列や順番を整理します。全角英数字の半角化や前後の空白削除も列ごとに選べます。
ブラウザ内で処理|ブラウザ内で処理します。サーバーへ送信しません。
- 1ファイル 5 MiB まで。1回に1ファイル。
- データは20,000レコード・200列・500,000セルまで。出力は 20 MiB まで。
- 列数が一致しない行がある場合は保存を中止し、元のCSVの確認を案内します(空白だけの行は削除できます)。
CSVを整理する
- 最初に出てきた行を残します。
- 判定する列がすべて空の行は、標準では削除しません。
- 選択した変換を行ったあとに重複を判定します。
- 氏名や住所が似ているだけでは、同じデータと判定しません。
ファイルの内容はブラウザ内で処理します。サーバーへ送信しません。
使い方
- 選択:CSVファイルを選択します。ファイルは端末内で読み込みます。
- 列と判定:残す列・並び順、重複を判定する列、前後の空白や全角英数字の変換を設定します。
- 確認:削除された行とその理由、変更されたセルの原値/新値を確認します。
- 保存:「整理したCSVを保存」でUTF-8でダウンロードします。設定を変えたら再処理が必要です。
重複を判定するルール
重複は「選んだ列の値の組み合わせ」が完全に一致するときだけ、同じデータと判定します。最初に出てきた行を残し、あとから出てきた行を削除します。 判定する列がすべて空の行は、標準では削除しません。一部だけ空の行は、空をワイルドカードにせず、値の組み合わせをそのまま比較します。 有効数字の扱い(例:「001」と「1」)は別の値として扱います。
列ごとの変換と処理順
変換と判定の順序は固定です。列の変換は、まず全角英数字(0-9、A-Z、a-z)を半角にし、そのあとで各セル両端の半角/全角スペースとタブを削除します。 記号・カナ・㈱・①などや、セル内の空白・改行は変更しません。重複の判定は「選択した変換を行ったあとの値」で行い、そのうえで残す列だけを投影します。
- 文字コードを判定して読み込む
- 選択した列に全角英数字→半角、続いてtrimを適用
- (任意)空白レコードを削除
- (任意)選択した列の値をキーに重複を削除(最初の行を残す)
- 残す列と順序で投影
- 出力モードに応じて式リスクを処理し、文字コードを付けて保存
合成サンプル
動作確認用のサンプルです(架空のデータ)。そのまま選択して、列の指定や重複削除を試せます。
CSV文字コード変換で文字コードを整えてから使うこともできます。
よくある質問
同じ名前の見出し(重複表頭)があると、どちらかの列が上書きされますか?
いいえ。列は見出し名ではなく安定した列ID(c0, c1, …)で扱うため、同じ名前の見出しでも上書きされません。見出し名は自動で変更しません。
判定する列が空の行はどうなりますか?
標準では、判定する列がすべて空の行は削除せず、そのまま残します。意図的に削除したい場合だけ「判定列がすべて空の行も重複として扱う」をオンにしてください。一部だけ空の行は、値の組み合わせをそのまま比較します(空をワイルドカードにはしません)。
全角の英数字はどこまで半角になりますか?
変換対象は列ごとに選べます。対象は全角の英数字(0-9、A-Z、a-z)だけで、記号・カナ・㈱・①などは変更しません。空白は各行の両端の半角/全角スペースとタブだけを削除し、セル内の空白や改行は残します。
「0001」のような前導ゼロは消えませんか?
このツールは値を文字列として扱うため、保存されるCSVでは前導ゼロは保持されます。ただしExcelでダブルクリックして開くと数値として解釈され、前導ゼロが表示上消えることがあります。その場合は「データ」→「テキストファイル」から文字列として読み込んでください。
元のファイルは変更されますか?
いいえ。元のファイルは変更しません。処理はすべてブラウザ内(Web Worker)で行い、ファイルの内容・名前・セルの中身をサーバーへ送信しません。ダウンロードした別ファイルだけが作られます。
列数が一致しない行があると保存できません。どう直しますか?
空白だけの行(物理的な空行など)は、「空白レコードを削除する」をオンにすると削除できます。それ以外の列数が足りない行は、内容が欠けている可能性があるためブロックし、該当のデータ行番号を示します。元のCSVを確認してから再試行してください。