Python Pivot table透视表使用方法解析


Posted in Python onSeptember 11, 2020

Pivot 及 Pivot_table函数用法

Pivot和Pivot_table函数都是对数据做透视表而使用的。其中的区别在于Pivot_table可以支持重复元素的聚合操作,而Pivot函数只能对不重复的元素进行聚合操作。

在一般的日常业务中,因为Pivot_table的功能更为强大,Pivot能做的不能做的Pivot_table都可做。所以只需要记住Pivot_table函数用法就好了。

Pivot函数的使用演示

#%%

import pandas as pd

df01 = pd.DataFrame(
  {
    "年份":[2019,2019,2019,2020,2020,2020],
    "平台":["京东","淘宝","拼多多","京东","淘宝","拼多多"],
    "销量":[100,200,300,400,500,600]
  }
)

df01

#%%

pd.pivot(df01,
     index = "年份",
     columns = "平台",
     values = "销量")

#%%

聚合后结果

Python Pivot table透视表使用方法解析

Pivot_table函数的使用演示

注释:index指定什么元素作为index显示,columns指定列,values指定统计的值。一般values都为int后者float类型的值。aggfunc为聚合函数可以指定(mean,sum,Min,Max等统计运算等函数,如果不指定默认为mean均值)

df02 = pd.DataFrame(
  {
    "年份":[2019,2019,2019,2019,2020,2020,2020,2020],
    "平台":["京东","淘宝","淘宝","拼多多","京东","淘宝","拼多多","拼多多"],
    "销量":[100,200,300,400,500,600,700,800]
  }
)
df02
#%%
#pivot_table用的很多.因为可以对重复的元素进行聚合操作.而pivot函数只能对不重复的行进行运算

pd.pivot_table(df02,
        index="年份",
        columns="平台",
        values="销量",
        aggfunc=sum #聚合函数来对销量进行运算.可以指定最大,最小,平均值等函数.默认为mean平均值
)
#%%

聚合结果

Python Pivot table透视表使用方法解析

对比结果:这里要强调一点的是,2020年平台为拼多多的数据出现了2次,而且2次的值不同。在pivot函数中是无法对这种重复平台的数据进行聚合的,但是Pivot_table则可以。

另外通过聚合函数aggfunc指定sum求和,可以把2次的值累加统计。

Pivot_table函数真实案例演示

1. 读取表格数据

#%%
df = pd.read_excel("./datas/result_datas.xlsx",
         ).convert_dtypes()  #读取数据并自动转化type
df.dtypes
#%%
df.head(3)
#%%

Python Pivot table透视表使用方法解析

2. 通过Pivot_table函数透视合并数据并对金额和数量做统计

因为涉及到敏感信息,因此服务卡卡号等敏感信息部分遮掩不显示。但是通过部分结果也可以看出是按照号码进行升序排序的

#按照自定义指定index,columns,values值
result = pd.pivot_table(df,
        index = ["姓名","服务卡卡号","明细","规格"],
        values = ["理赔金额(元)","数量"],
        aggfunc=sum
        )
result = result.sort_values("服务卡卡号") #按照指定values值排序
result

#%%

#输出到文件
result.to_excel("./datas/output_datas.xlsx")
print("Done!!!")

Python Pivot table透视表使用方法解析

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的requests网络编程包使用教程
Jul 11 Python
浅谈scrapy 的基本命令介绍
Jun 13 Python
Python中执行存储过程及获取存储过程返回值的方法
Oct 07 Python
python好玩的项目—色情图片识别代码分享
Nov 07 Python
Python实现的简单读写csv文件操作示例
Jul 12 Python
python实现写数字文件名的递增保存文件方法
Oct 25 Python
python添加模块搜索路径和包的导入方法
Jan 19 Python
PyQt+socket实现远程操作服务器的方法示例
Aug 22 Python
python颜色随机生成器的实例代码
Jan 10 Python
python实现低通滤波器代码
Feb 26 Python
python 使用cx-freeze打包程序的实现
Mar 14 Python
Flask response响应的具体使用
Jul 15 Python
Python extract及contains方法代码实例
Sep 11 #Python
python 利用zmail库发送邮件
Sep 11 #Python
浅析Python 责任链设计模式
Sep 11 #Python
详解python命令提示符窗口下如何运行python脚本
Sep 11 #Python
python实现邮件循环自动发件功能
Sep 11 #Python
Python 实现微信自动回复的方法
Sep 11 #Python
python 如何调用远程接口
Sep 11 #Python
You might like
php计算十二星座的函数代码
2012/08/21 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
简单谈谈 php 文件锁
2017/02/19 PHP
PHP/HTML混写的四种方式总结
2017/02/27 PHP
PHP中SESSION过期设置
2021/03/09 PHP
Extjs学习笔记之七 布局
2010/01/08 Javascript
jquery默认校验规则整理
2014/03/24 Javascript
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
jQuery日历插件datepicker用法详解
2016/03/03 Javascript
AngularJS ng-bind-template 指令详解
2016/07/30 Javascript
BootStrap网页中代码显示用法详解
2016/10/21 Javascript
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
React Router基础使用
2017/01/17 Javascript
Move.js入门
2017/02/08 Javascript
详解vue2.0的Element UI的表格table列时间戳格式化
2017/06/13 Javascript
Vue列表渲染的示例代码
2018/11/01 Javascript
Nuxt.js开启SSR渲染的教程详解
2018/11/30 Javascript
一篇文章介绍redux、react-redux、redux-saga总结
2019/05/23 Javascript
详解vue 组件的实现原理
2020/11/12 Javascript
Python中用memcached来减少数据库查询次数的教程
2015/04/07 Python
Python使用ConfigParser模块操作配置文件的方法
2018/06/29 Python
Python3+django2.0+apache2+ubuntu14部署网站上线的方法
2018/07/07 Python
python 3.7.0 安装配置方法图文教程
2018/08/27 Python
Python采集猫眼两万条数据 对《无名之辈》影评进行分析
2018/12/05 Python
Python常用模块之requests模块用法分析
2019/05/15 Python
基于python实现FTP文件上传与下载操作(ftp&sftp协议)
2020/04/01 Python
Python 使用Opencv实现目标检测与识别的示例代码
2020/09/08 Python
利用CSS3实现文本框的清除按钮相关的一些效果
2015/06/23 HTML / CSS
日本最大化妆品和美容产品的综合口碑网站:cosme shopping
2019/08/28 全球购物
某公司.Net方向面试题
2014/04/24 面试题
结婚周年感言
2014/02/24 职场文书
语文教育专业求职信
2014/06/28 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
孔庙导游词
2015/02/04 职场文书
Windows Server 2008配置防火墙策略详解
2022/06/28 Servers