前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >对比Excel,轻松搞定Python数据透视表

对比Excel,轻松搞定Python数据透视表

作者头像
快学Python
发布2022-11-28 14:10:46
1.6K0
发布2022-11-28 14:10:46
举报
文章被收录于专栏:快学Python快学Python

人生苦短,快学Python!

学习Excel,数据er最常用的两大Excel功能就是VLOOKUP和数据透视表!利用数据透视表可以从繁杂无序的源数据中筛选出自己需要的“字段标题”进行分类汇总、对比或合并等操作,作为一种强大的交互性报表,大大简化了数据处理和分析工作的步骤,提高办公效率,职场达人必学!

上一篇文章中我们已经详细讲解了Python如何实现Excel中的“Vlookup”函数?那我们今天就聊聊,如何Python实现Excel中数据透视表?


用Excel实现数据透视表的优势也很明显,只需要拖拉拽就可以,非常简单也容易操作。而Python去处理数据可以更快更强,比如几十万行级别的数据,Excel打开都需要半天,更别提快速处理了。

在 Pandas 模块中,调用pivot_table()方法,可以帮助我们实现数据透视表的操作。接下来我们可以对比 Excel 中数据透视表的操作步骤,为大家介绍pivot_table()方法中的常用参数。

▲图3-16

对比上图的Excel数据透视表参数,我列出了pivot_table()方法中的8个常用参数。

附上官网学习地址:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.pivot_table.html

▲《快学Python:自动化办公轻松实战》

此外,还有两个参数用的较少,不用特别记忆。

  • dropna 表示是否删除缺失值,如果为True时,则把一整行全作为缺失值删除;
  • sort=True 表示排序(版本1.3.0才有)。

接下来用一个小案例实战来模拟,Python实现Excel中数据透视表。

▲原始数据

导入数据,在交互式环境中输入如下命令:

代码语言:javascript
复制
import pandas as pd

df = pd.read_excel("原始数据.xlsx")
df.head()

输出结果:

接下来,使用几个最常见的参数建立透视表。

在交互式环境中输入如下命令:

代码语言:javascript
复制
pd.pivot_table(df,
               values = "销售数量",
               index = ["货季", "区域"],
               columns = "品牌",
               aggfunc = np.sum)

输出结果:

如上图所示,“透视表”中NaN空值可以使用fill_value参数填充为0;此外,指定参数margins=True就可以增加合计列,同时也能指定合计名称(margins_name)。

在交互式环境中输入如下命令:

代码语言:javascript
复制
pd.pivot_table(df,
               values = "销售数量",
               index = ["货季", "区域"],
               columns = "品牌",
               # aggfunc = np.sum, 
               aggfunc = "sum", # 同上
               margins = True,
               margins_name = "总计",
               fill_value = 0)

输出结果:

以上就是Python实现Excel中数据透视表的常用操作了。人生苦短,快学Python!如果文章对你有帮助,希望大家点赞支持一下!

openpyxl提供对透视表的读取支持,以便将它们保留在现有文件中,但是不支持用户创建pivot表。它可以编辑和操作现有的透视表,以后有机会跟大家介绍一波。

如果大家想系统学习Pandas,推荐一本《深入浅出Pandas》

这是一本全面覆盖了Pandas使用者的普遍需求和痛点的著作,基于实用、易学的原则,从功能、使用、原理等多个维度对Pandas做了全方位的详细讲解,既是初学者系统学习Pandas难得的入门书,又是有经验的Python工程师案头必不可少的查询手册。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-08-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 快学Python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档