← ポートフォリオに戻る

データ整理・クレンジング(Python)

表記がバラバラな顧客リストを、
そのまま使える形に整える

複数の担当者が入力した顧客リスト(CSV)を、Pythonで一括で整えたサンプルです。全角・半角のゆれ、電話番号や日付の書き方の違いをそろえ、重複している人を1件にまとめます。自動で直せない値は消さずに「要確認」として残します。

PythonCSV / Excel表記ゆれ統一重複削除

整理する前のデータ(12件)

同じ人が書き方を変えて2回登録されている、電話番号やメールが全角になっている、日付の形がそろっていない、などの状態です。

氏名電話番号メール住所登録日
山田 太郎090-1234-5678taro.yamada@example.com愛知県名古屋市中区栄1-2-32026/04/01
佐藤 花子08011112222Hanako.Sato@Example.com東京都世田谷区三軒茶屋2-10-52026年4月3日
鈴木 一郎03-1234-5678ichiro@example.co.jp大阪府大阪市北区梅田3-1-12026-04-05
山田太郎09012345678taro.yamada@example.com愛知県名古屋市中区栄1-2-32026/05/12
高橋 美咲070 2222 3333misaki.t@example.com福岡県福岡市博多区博多駅前2-1-12026.04.20
田中 健052-123-4567ken_tanaka@example名古屋市千種区今池1-1-12026/04/22
伊藤 さくら080-3333-4444SAKURA.ITO@EXAMPLE.COM北海道札幌市中央区北1条西2-12026/4/25
渡辺 大輔0901234daisuke.w@example.com神奈川県横浜市西区みなとみらい2-2-12026/04/28
佐藤 花子080-1111-2222hanako.sato@example.com東京都世田谷区三軒茶屋2-10-52026/05/02
中村 ゆい090-5555-6666yui.nakamura@example.com京都府京都市下京区四条通1-12026/05/06
小林 翔太090-7777-8888shota.k@example.com埼玉県さいたま市大宮区桜木町1-12026/05/10
加藤 愛080-9999-0000ai.kato@example.com静岡県静岡市葵区追手町9-62026/13/01

整理した後のデータ(10件)

氏名電話番号メール都道府県住所登録日要確認
鈴木 一郎03-1234-5678ichiro@example.co.jp大阪府大阪市北区梅田3-1-12026-04-05
高橋 美咲070-2222-3333misaki.t@example.com福岡県福岡市博多区博多駅前2-1-12026-04-20
田中 健052-123-4567ken_tanaka@example名古屋市千種区今池1-1-12026-04-22メールアドレスの形が不正/都道府県が書かれていない
伊藤 さくら080-3333-4444sakura.ito@example.com北海道札幌市中央区北1条西2-12026-04-25
渡辺 大輔0901234daisuke.w@example.com神奈川県横浜市西区みなとみらい2-2-12026-04-28電話番号の桁数が合わない
佐藤 花子080-1111-2222hanako.sato@example.com東京都世田谷区三軒茶屋2-10-52026-05-02
中村 ゆい090-5555-6666yui.nakamura@example.com京都府京都市下京区四条通1-12026-05-06
小林 翔太090-7777-8888shota.k@example.com埼玉県さいたま市大宮区桜木町1-12026-05-10
山田 太郎090-1234-5678taro.yamada@example.com愛知県名古屋市中区栄1-2-32026-05-12
加藤 愛080-9999-0000ai.kato@example.com静岡県静岡市葵区追手町9-62026/13/01日付の形が読み取れない
12件 → 10件重複していた2人を1件にまとめました
6項目氏名・電話・メール・住所・日付の書き方をそろえました
3件自動で直せない値を「要確認」として残しました

行った処理

  1. 全角の英数字・記号を半角に、半角カタカナを全角にそろえる
  2. 氏名の間の空白を「姓 名」の半角スペース1つにそろえる
  3. 電話番号を「090-1234-5678」の形にそろえる(固定電話は元の区切りを生かす)
  4. メールアドレスを小文字にし、形が正しいかを確認する
  5. 住所を「都道府県」と「それ以降」の2列に分ける
  6. 日付を「2026-04-01」の形にそろえる
  7. 電話番号かメールアドレスが同じ行を重複とみなし、新しい日付の行を残す

大切にしていること

データを勝手に消したり、推測で埋めたりはしません。都道府県が書かれていない住所、桁数が足りない電話番号、存在しない日付(13月)などは、元の値のまま「要確認」の列に理由を書き、ご確認いただけるようにしています。

ファイル

※データはすべて架空のものです。実在の人物・団体とは関係ありません。Excelファイル(.xlsx)やGoogleスプレッドシートでも同じ処理ができます。