Python Pandas批量处理多张Excel数据并汇总统计

木白
木白
发布时间:2026-10-14| 5人浏览过
原创

本文通过实际案例展示如何利用Python的Pandas库高效处理多张Excel文件。针对90个品牌销售数据,通过计算销售额、按品牌汇总及排序,快速筛选出销售额前五的品牌。相比传统Excel操作,该方法大幅提升了数据处理效率,适合非程序员及数据分析师使用。

越来越多的非程序员职场人士开始学习Python,并非为了爬取数据获取成就感,而是为了解决工作中复杂的数据分析与处理问题。Python能够以简单高效的方式解决这些难题。本文将通过一个实际案例,展示Python如何高效处理复杂的数据分析任务。

背景

背景

小明在一家户外运动专营公司担任数据分析师,该公司旗下拥有多个品牌,涉及众多细分行业。他日常主要使用Excel进行数据分析。近日,老板交给他一项任务:在下班前筛选出集团旗下最近一年销售额前五名的品牌及其具体销售额。

对于经验丰富的Excel用户而言,这似乎轻而易举。然而,当市场部同事发送原始数据文件后,小明发现情况远比想象中复杂:

这并非简单的排序取前五。总共有90个文件,常规思路要么将所有文件内容复制到一张表中进行分类汇总,要么对每张表格分别汇总后再进行最终汇总。

考虑到巨大的工作量和紧迫的截止时间,小明感到十分头疼。

思路分析

思路分析

这种繁琐的工作,通过编写程序解决最为轻松。小明想到了他的程序员朋友小段,于是将问题抛给了他。

小段梳理了一下所剩无几的头发,表示这非常简单,只需使用潘大师即可。

小明疑惑道:你搞不定吗?还要找其他人!

小段解释说:潘大师是Python中一个处理数据的库,名为Pandas,俗称潘大师。

小明表示:我不关心什么大师,只问需要多久搞定。

小段回答:给我几分钟写程序,再运行几秒钟即可!

小明发送了膜拜大佬的表情。

小段稍作思考,整理了程序思路:

  • 计算每张表每一行的销售额,公式为“访客数 * 转化率 * 客单价”。
  • 将每张表格根据品牌汇总销售额。
  • 将所有表格的结果汇总成一张总表。
  • 在总表中根据品牌汇总销售额并排序。

编码实现

编码

第零步,读取Excel文件:


import pandas as pd

df = pd.read_excel("./tables/" + name)

第一步,计算每张表格内的销售额:


df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']

第二步,将每张表格根据品牌汇总销售额:


df_sum = df.groupby('品牌')['销售额'].sum().reset_index()

第三步,将所有表格的结果汇总成一张总表:


result = pd.DataFrame()
result = pd.concat([result, df_sum])

第四步,在总表中根据品牌汇总销售额并排序:


final = result.groupby('品牌')['销售额'].sum().reset_index().sort_values('销售额', ascending=False)

最后,我们来看看完整的程序:


import pandas as pd
import os

result = pd.DataFrame()

for name in os.listdir("./tables"):
  try:
    df = pd.read_excel("./tables/" + name)
    df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']
    df_sum = df.groupby('品牌')['销售额'].sum().reset_index()
    result = pd.concat([result, df_sum])
  except:
    print(name)
    pass

final = result.groupby('品牌')['销售额'].sum().reset_index().sort_values('销售额', ascending=False)
pd.set_option('display.float_format', lambda x: '%.2f' % x)
print(final.head())

最终结果如下:

品牌 销售额 15 品牌-5 1078060923.62 8 品牌-17 1064495314.96 4 品牌-13 1038560274.21 3 品牌-12 1026115153.00 13 品牌-3 1006908609.07

可以看到,最终的前五名已经清晰呈现,整个程序运行速度非常快。

几分钟后,小段将结果发给了小明,小明感动不已,直呼改天请吃饭,并拜师学艺!

总结

总结

本文通过实际案例展示了Pandas(潘大师)的魅力,特别是在表格处理方面,其便捷性不言而喻。编写过程序的人可能会感到熟悉,这种处理方式类似于SQL查询语句。Pandas不仅使程序处理更简单高效,对于经常处理表格的非程序员也非常友好,上手相对容易。

示例代码:https://github.com/JustDoPython/python-examples/tree/master/xianhuan/pandasexcel

以上就是利用Python汇总统计多张Excel的详细内容,更多关于Python汇总统计多张Excel的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。