10分钟清洗一份脏Excel:3个Python脚本模板

2026-09-29 · 喵窝资源铺 · 实测可运行(Python 3.8+,需 pandas)

拿到手一份几千行的表:重复行、手机号带空格、日期三种格式混着来……手动改要半天。下面3段脚本是我做数据清洗时最常用的,复制就能跑。

脚本1:去重 + 删全空行

import pandas as pd

df = pd.read_excel("脏数据.xlsx")
df = df.dropna(how="all")                      # 删整行全空
df = df.drop_duplicates(subset=["手机号"])       # 按关键列去重(换成你的列名)
df.to_excel("去重后.xlsx", index=False)
print(f"原始 {len(pd.read_excel('脏数据.xlsx'))} 行 → 剩 {len(df)} 行")

脚本2:手机号/日期格式统一

df["手机号"] = df["手机号"].astype(str).str.replace(r"\D", "", regex=True)

df["日期"] = pd.to_datetime(df["日期"], errors="coerce")  # 三种混写格式一次吃下
df = df[df["日期"].notna()]                                # 解析失败的行单独检查
df["日期"] = df["日期"].dt.strftime("%Y-%m-%d")

脚本3:一列拆多列(姓名+电话挤在一格里)

split = df["联系人"].str.extract(r"(?P<姓名>[\u4e00-\u9fa5]+)\s*(?P<电话>[\d\- ]+)")
df = pd.concat([df.drop(columns=["联系人"]), split], axis=1)

常见坑

不想动手?把文件和你要的结果发给我,我亲自清洗交付:成品表 + 可复用的清洗脚本(下次你自己也能跑),¥19.9/次。

 

虚拟物品交付后不退款;未收到或未达承诺免费补发/重做。

更多实测指南: 1小时调研法 · 简历5大错误 · 自建收款站 · 30行Python整理文件 · Python automation (EN) · 免费工具清单(留邮箱即发)· 客服话术模板