本文介绍使用pandas读取csv、筛选处理数据,并导出为excel后嵌入word的完整自动化流程,避免手动复制粘贴,大幅提升多表格报告的生成效率。
在科研报告、业务分析或行政文档撰写中,常需将结构化CSV数据(如8列销售记录、用户行为日志等)转化为Word中多个格式统一的表格。手动操作不仅易出错,且难以复用——而通过Python + Excel中转 + Word嵌入的方式,可实现“一次脚本、批量生成”。以下是经过验证的专业实践路径:
首先确保已安装必要库:
pip install pandas openpyxl
使用pandas.read_csv()读取全量数据,并通过列名索引、布尔筛选或iloc/loc精准提取目标子集:
import pandas as pd
# 读取CSV(自动推断分隔符,支持中文路径)
df = pd.read_csv("data.csv", encoding="utf-8")
# 示例1:提取前3列 + 第5、7列,构成新表格
subset_df = df.iloc[:, [0, 1, 2, 4, 6]]
# 示例2:按条件筛选(如只保留"Status"为"Active"的记录)
active_df = df[df["Status"] == "Active"].copy()
# 示例3:按多列分组汇总(生成统计型表格)
su
mmary_df = df.groupby(["Region", "Product"]).agg({
"Sales": "sum",
"Quantity": "mean"
}).round(2).reset_index()✅ 关键提示:务必调用 .copy() 避免链式赋值警告;对中文列名请确认CSV编码(推荐UTF-8 with BOM或GBK);若含日期字段,可加 parse_dates=["Date"] 参数自动转换。
Word原生不支持直接插入DataFrame,但完美兼容Excel嵌入对象(支持双击编辑、保持行列样式):
立即学习“Python免费学习笔记(深入)”;
# 导出为.xlsx(.csv无法嵌入为可编辑表格)
subset_df.to_excel("table_1_active_summary.xlsx", index=False, engine="openpyxl")
active_df.to_excel("table_2_region_breakdown.xlsx", index=False, engine="openpyxl")⚠️ 注意:
? 进阶建议:
通过该流程,原本数小时的手动整理可压缩至数分钟运行+一键粘贴,且全程可复现、可审计、可迭代——真正实现数据驱动文档的工业化生产。