博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Pandas之透视表pivot_table
阅读量:3748 次
发布时间:2019-05-22

本文共 1394 字,大约阅读时间需要 4 分钟。

Pandas之透视表pivot_table

1. 什么是pivot_table

透视表是一种可以对数据动态排布并且分类汇总的表格格式

pivot_table(data, values=None, index=None, columns=None,aggfunc='mean', 	fill_value=None, margins=False, dropna=True, margins_name='All')

在这里插入图片描述

2. 如何操作pivot_table

pivot_table有四个最重要的参数index、values、columns、aggfunc,本文以这四个参数为中心讲解pivot操作是如何进行。

2.1 加载数据

import pandas as pd	import numpy as np	df = pd.read_csv('James_Harden.csv',encoding='utf8')	df.head()

在这里插入图片描述

2.2 index参数

  • Index就是层次字段,要通过透视表获取什么信息就按照相应的顺序设置字段
#查看哈登对阵每个队伍的得分,首先我们将对手设置为index:	pd.pivot_table(df,index='对手').head()

在这里插入图片描述

#看对阵同一对手在不同主客场下的数据,将对手与胜负与主客场都设置为index	pd.pivot_table(df,index=['对手','主客场']).head(8)

在这里插入图片描述

2.3 values参数

  • 可以对需要的计算数据进行筛选
# 当我们未设置aggfunc时,它默认aggfunc='mean'计算均值	pd.pivot_table(df,index=['主客场','胜负'],values=['助攻','篮板','得分'])

在这里插入图片描述

2.4 columns参数

  • 设置列层次字段
#margins=1 添加总和	pd.pivot_table(df,index=['主客场'],columns=['对手'],values=['得分'],aggfunc=[np.sum],fill_value=0,margins=1)

在这里插入图片描述

table = pd.pivot_table(df,index=['对手','胜负'],columns=['主客场'],values=['助攻','篮板','得分'],aggfunc=[np.mean],fill_value=0)	table

在这里插入图片描述

2.5 aggfunc参数

  • 对数据聚合时进行的函数操作
# 当我们未设置aggfunc时,它默认aggfunc='mean'计算均值	pd.pivot_table(df,index=['主客场','胜负'],values=['助攻','篮板','得分'],aggfunc=[np.mean,np.max])

在这里插入图片描述

2.6 查询

table.query('对手==["76人"]')

在这里插入图片描述

3. 总结

  • pd.pivot_table(df,index=[字段1],values=[字段2],aggfunc=[函数],fill_value=0)

  • df.groupby([字段1])[字段2].agg(函数).fillna(0)

  • 上面两个函数完全等价,pivot_table仿佛是加入了columns与margin功能的groupby函数,比groupby更加灵活。

  • 在这里插入图片描述

  • 数据下载: 提取码: yr9q

转载地址:http://imdsn.baihongyu.com/

你可能感兴趣的文章
5.找出字符串中第一个只出现一次的字符
查看>>
线程的编程4种实现方法
查看>>
new Thread的弊端
查看>>
6.对字符串中的所有单词进行倒排。
查看>>
多线程编程细节
查看>>
7.字符统计
查看>>
ThreadPoolExecutor
查看>>
8.百钱买百鸡
查看>>
Executors创建线程池
查看>>
线程的状态切换
查看>>
sleep方法
查看>>
13.找到字符串的最长无重复字符串字串
查看>>
图的最短路径
查看>>
英文字母和中文汉字在不同字符集编码下的字节数
查看>>
java课程设计acm习题解答
查看>>
高精度A+B、A-B、A*B
查看>>
素数的求法
查看>>
java网络编程(套接字)(学习笔记)
查看>>
利用URL查看网页源代码
查看>>
简易聊天小程序(java源代码)
查看>>