CSVの重複行を安全に削除するには、1件のレコードを特定できるカラムを照合し、候補グループを確認してから、不要な行を削除するか、残したい値をマージします。この方法は、1つのCSVファイルにも、同じDatablistコレクションへインポートした複数のファイルにもご利用いただけます。
最初の照合には、メールアドレス、電話番号、企業Webサイト、SKUなど、値が変わりにくい識別子をお使いください。表記ゆれやフォーマットの違いがある場合は、Smart、fuzzy、phonetic matchingを使用し、確信度の低いグループはレビュー対象として残します。
CSVファイルの重複データをマージする
Datablistは、スプレッドシートでは難しいデータ処理に適しています。使いやすいオンラインCSVエディターをお探しの際にぜひご活用ください。
このガイドでは、数千件のデータを含む2つのCSVファイルを使用します。両方を1つのコレクションに読み込み、4つのカラムのうち1つを基準に重複を除去します。同じ手順で、単一のCSVファイルも重複排除できます。
CSVファイルには、First Name、Last Name、Email、Job Titleの4つのカラムがあります。今回は、同じメールアドレスを持つレコードをマージします。
1つのセルに複数のメールアドレスが入っている場合は、重複検出を実行する前に、複数の値を含むCSVセルを行に分割してください。エクスポート元のファイルが大きすぎて安全にインポートまたは確認できない場合は、重複排除の前に大容量CSVファイルを分割します。
重複データをマージする流れは、次の4ステップです。
Step 1:CSVファイルをDatablistに読み込む
新しいコレクションを作成する
最初に、CSVファイルをDatablistへ読み込みます。Datablistを開く(登録不要)から始めてください。
新しいコレクションを作成するには、**+**付きの「New collection」ボタンをクリックします。作成後、コレクション名とアイコンを設定してください。
続いて、Import CSVボタンをクリックします。
CSVファイル用のプロパティを作成する
CSVファイルを読み込むと、そのカラム名を使ってコレクションのプロパティを作成できます。DatablistにCSV内のすべてのカラムが表示されるため、それぞれに対応するプロパティを作成してください。
CSVファイル自体にはカラムのデータ型が定義されていません。Datablistはインポートした値を基にデータ型を提案し、並べ替えや絞り込みをしやすくします。インポート前に、提案内容をご確認ください。
SKU、アカウントID、郵便番号などの識別子は、Textのままにすることをおすすめします。たとえば、00127をNumberに変換すると先頭のゼロが失われ、照合キーが変わってしまいます。適切な型が分からない場合は、プロパティ型のガイドをご覧ください。
内容を確認してインポートする
確認ステップでは、CSVの行がファイルの内容どおりに表示されます。データの形式が正しく、一貫していることをご確認ください。その後、「Import items」ボタンをクリックすれば完了です! 💪
ほかのCSVファイルも同じ手順で読み込む
プロパティを設定したコレクションが用意できたら、「Import CSV/Excel」を使い、ほかのCSVファイルやExcelファイルも同じコレクションへインポートします。
Step 2:CSVの重複データを検出する
CSVファイルを読み込んだら、Clean > Merge duplicatesを開きます。余分な行に残すべきデータがない場合は、代わりにRemove duplicatesを選択してください。
次の2つのモードをご利用いただけます。
- All Properties:行全体を比較します。
- Selected Properties:レコードを特定するカラムだけを比較します。
ここでは、emailプロパティだけで連絡先を特定できるため、Selected Propertiesモードを選び、プロパティにemailを指定します。
エイリアスやメールラッパーによって値が異なる場合は、メール専用のワークフローでメールアドレスの表記違いを重複排除してください。
このチェックではデータは変更されません。結果画面には重複グループと一致した理由が表示され、処理可能なReadyグループと、確認が必要な候補が分けられます。
マージせずにCSVの重複行を削除する
削除だけを行う場合は、結果画面でRemove duplicatesを選択します。
- Record to keepを確認します。デフォルトはMost Completeです。ほかのレコード選択ルールには有料プランが必要です。選ばれた行は変更されずに残ります。
- いくつかのグループを開き、KeepとRemoveが付いた行を比較します。削除対象の行に、残しておきたい電話番号、メモ、より新しい値などが含まれていないかご確認ください。
- そのような値を残す必要がある場合は、Merge and preserve dataを選択し、以下のStep 3へ進みます。単に削除した場合、残す行へ追加の値はコピーされません。
- Readyグループが意図どおりであることを確認したら、Remove ready duplicatesをクリックします。確定する前に、データ損失に関する警告をご確認ください。
たとえば、メールアドレスまで同一の2行なら、1行にまとめられます。一方、メールアドレスは同じでも電話番号が異なる2行では、どちらか一方を変更せずに残すか、電話番号を保存先レコードへマージするかを判断する必要があります。
どの行を残すか決める前に、照合するカラムを選んでください。 All Propertiesでは、全項目が同じ行を検出できます。Selected Propertiesなら、役職や電話番号が異なっていても、同じ連絡先としてグループ化できます。ただし、同じ企業に複数の担当者がいるため、企業Webサイトだけを照合条件にするのは範囲が広すぎます。
元のCSVファイルは保存しておいてください。処理後は、削除された行数と確認済みグループを照合し、残った識別子をチェックして、クリーンなコレクションをCSVとしてエクスポートします。確認待ちの行はコレクションに残せるため、バッチ処理が完了しても、すべての重複候補が解決済みとは限りません。
Step 3:重複データを自動でマージする
2件目以降のCSVレコードに残すべき値がある場合は、Merge and preserve dataを選択します。Datablistが保存先となるレコードを1件選び、空のプロパティを補完し、競合ルールを適用してから、それ以外のレコードを削除します。
プレビューでは、処理可能なReadyグループと、未解決の競合があるグループが分けて表示されます。レビュー、survivorship、レコード選択の詳しい設定については、Duplicate Finderのドキュメントをご覧ください。
Resolve conflicting valuesを展開すると、ルールの設定が必要なプロパティを確認できます。
競合しない行をマージする
「Merge non-conflicting duplicates」アルゴリズムは「smart merge」を実行します。類似する値や、互いに補完できる値を持つレコードをマージする仕組みです。
たとえば、次の重複データがあるとします。
email | First Name | Last Name
james@gmail.com | James
james@gmail.com | | Bond
マージ後は次のようになります。
email | First Name | Last Name
james@gmail.com | James | Bond
重複する値を結合する
重複レコードに競合する値があっても、データを失わずにマージしたい場合は、値の結合(統合)が便利です。
たとえば、Phoneプロパティをセミコロンで結合します。
email | Phone | First Name | Last Name
james@gmail.com | +33 1 34 65 23 | James |
james@gmail.com | 06 13 42 78 23 | | Bond
マージ後は次のようになります。
email | Phone | First Name | Last Name
james@gmail.com | +33 1 34 65 23;06 13 42 78 23 | James | Bond
テキストを含むプロパティであれば結合できます。利用可能な区切り文字は、line break、semi-colon、comma、spaceです。マージ時に、1つまたは複数のプロパティを結合できます。
重複項目のマージと値の結合は、LeadリストやCRMのデータクリーニングに最適です。重複するLeadをすべてマージし、Phone、Email、Notesプロパティを結合すれば、クリーンなリストを作成できます。整理済みのLead CSVをエクスポートした後は、CRMへ再インポートするだけです。
選択したレコードの値を残す
このルールでは、選択した保存先レコードの値を残し、競合するほかの値を破棄します。
Most CompleteがデフォルトのRecord to keepルールです。有料プランでは、別のルールを選択したり、survivorshipルールを使ってフィールドごとに残す値を指定したりできます。
drop conflicting valuesオプションは、次のような項目にお使いください。
Account Idなど、値が1つでなければならない技術的なプロパティ。- 「Relation」型で複数の値を持てないプロパティ。たとえば、
Lead ownerやAccount。 - 結合できないテキスト以外のプロパティ。たとえば、
Last ActivityやContacted onなどの日時、チェックボックス。
Step 4:Merging Assistantで手動マージする
重複グループごとに手動で判断する必要がある場合は、Review groupを開きます。Merging Assistantでは、保存先と各プロパティで残す値を選択できます。
手動で選んだ保存先には、そのDatablist IDが引き継がれます。ほかの行はセカンダリレコードとして扱われます。
各プロパティを確認し、残す値を選んでからマージを確定します。重複グループから特定の行を除外したり、グループ全体をスキップしたりすることもできます。
必要に応じてCSVへエクスポートする
これでCSVファイルの重複排除は完了です! 結果を別のツールで使う場合は、「Export」ボタンをクリックし、コレクションを新しいCSVファイルとしてエクスポートしてください。
FAQ
Datablistではほかにどのようなデータ処理ができますか?
CSVファイルは、ソフトウェアアプリケーションやデータセットの構造化データを定義するために広く使われています。一方で、CSVの操作は難しく、専門知識が必要になることも少なくありません。
単純な処理であれば、スプレッドシートで十分です。ただし、次のような処理には限界があります。
一意のカラムを使って複数のCSVファイルを結合したい場合は、CSVファイルを結合する方法のガイドをご覧ください。
Datablistは大容量CSVファイルにも対応していますか?
Freeプランでは、ブラウザストレージ上で1コレクションにつき最大100万件を処理できます。有料プランでは、1コレクションにつき最大200万件をインポートできます。ただし、大規模なローカル処理の性能は、ブラウザとデバイスに左右されます。詳しくは、大容量CSVファイルを編集する方法をご覧ください。
重複排除はMicrosoft ExcelやGoogle Sheetsより高機能ですか?
スプレッドシートツール(Microsoft Excel、Google Sheets)にも重複削除機能があります。これは類似する行を削除する仕組みですが、ビジネス用途では、単に行を削除するだけでは十分でないことがあります。
Datablistでは、ファイルを変更する前に重複グループを確認できます。不要な行の削除、相互に補完する値のマージ、競合の解決ができるほか、確信の持てないグループを変更せずに残すことも可能です。
ご不明な点がございましたら、お問い合わせください。








