一、前言
职场整理的表格数据往往存在大量问题:重复数据、空值、异常数值、多余空格、格式不统一、无效字符。手动清理几小时,Python pandas一键批量处理,高效精准、零遗漏。本文聚焦职场通用数据清洗场景,适配所有办公表格。
二、环境安装
pip install pandas openpyxl
三、七大高频数据清洗实战
1. 读取Excel数据
import pandas as pd
# 读取表格数据
df = pd.read_excel("原始办公数据.xlsx")
# 查看数据基本信息
print("数据总行数:", len(df))
print("数据基本信息:")
print(df.info())
print("原始数据预览:")
print(df.head())
2. 去除重复数据
# 去除完全重复行
df = df.drop_duplicates()
# 按指定列去重(如按员工姓名、手机号去重)
df = df.drop_duplicates(subset=["姓名"], keep="first")
print("重复数据删除完成!")
3. 处理空值数据
# 统计每列空值数量
print("空值统计:")
print(df.isnull().sum())
# 1. 删除空值过多的行
df = df.dropna(thresh=3)
# 2. 填充空值(文本填未知,数值填0)
df["部门"] = df["部门"].fillna("未知部门")
df["薪资"] = df["薪资"].fillna(0)
4. 清除多余空格和无效字符
# 批量清除文本列空格
df["姓名"] = df["姓名"].str.strip()
df["部门"] = df["部门"].str.strip()
# 替换无效特殊字符
df["备注"] = df["备注"].str.replace("[^\u4e00-\u9fa5a-zA-Z0-9]", "", regex=True)
5. 筛选过滤异常数据
# 筛选薪资大于0的有效数据
df = df[df["薪资"] > 0]
# 筛选指定部门数据
df = df[df["部门"].isin(["技术部", "市场部", "人事部"])]
6. 统一数据格式
# 统一日期格式
df["入职时间"] = pd.to_datetime(df["入职时间"], errors="coerce")
# 统一数值格式保留2位小数
df["薪资"] = df["薪资"].round(2)
7. 清洗后数据导出保存
# 导出清洗后的干净数据
df.to_excel("清洗后数据.xlsx", index=False)
print("数据清洗完成,已导出新表格!")
四、职场使用总结
1、以上代码为通用模板,替换表格文件名和列名即可适配所有场景;
2、数据清洗是数据分析前置必备步骤,可大幅提升数据准确性;
3、批量处理上万行数据,效率远超Excel手动操作。
浙公网安备 33010602011771号