📝 174 字 · ☕ 1 分钟阅读
前言
日常工作中,Excel 数据清洗和整理往往是耗时最多的环节。无论是合并多个表格、筛选特定条件的数据,还是生成统计汇总,手动操作既容易出错又效率低下。本文将用 Python + Pandas 演示最常见的 Excel 数据处理场景,让你 5 分钟完成原本 1 小时的手工活。
环境准备
首先安装依赖库:
pip install pandas openpyxl
其中 openpyxl 是 Pandas 读写 .xlsx 文件的后端引擎。
核心实现
1. 读取 Excel 文件
import pandas as pd
# 读取单个sheet
df = pd.read_excel('销售数据.xlsx', sheet_name='Sheet1')
# 只看前5行预览
print(df.head())
2. 数据清洗常用操作
# 删除空行
df = df.dropna()
# 填充空值
df['金额'] = df['金额'].fillna(0)
# 删除重复行
df = df.drop_duplicates()
# 筛选条件:金额大于1000的订单
high_value = df[df['金额'] > 1000]
3. 分组统计与汇总
# 按销售地区统计总金额
summary = df.groupby('地区')['金额'].agg(['sum', 'mean', 'count'])
print(summary)
# 生成透视表
pivot = pd.pivot_table(df, values='金额', index='地区',
columns='产品类别', aggfunc='sum', fill_value=0)
4. 合并多个Excel文件
import os
folder = './月度报表/'
all_files = [f for f in os.listdir(folder) if f.endswith('.xlsx')]
df_list = [pd.read_excel(os.path.join(folder, f)) for f in all_files]
merged = pd.concat(df_list, ignore_index=True)
5. 导出结果
with pd.ExcelWriter('数据分析结果.xlsx', engine='openpyxl') as writer:
merged.to_excel(writer, sheet_name='合并数据', index=False)
summary.to_excel(writer, sheet_name='地区汇总')
high_value.to_excel(writer, sheet_name='高价值订单', index=False)
总结
以上 5 个场景覆盖了日常 Excel 处理的 80% 需求:读取 → 清洗 → 筛选 → 统计 → 导出。核心要点:
read_excel()是入口,to_excel()是出口groupby()+ 聚合函数 = 秒杀数据透视表pd.concat()一键合并多个文件- 善用
dropna()、fillna()、drop_duplicates()三步清洗