Python中怎么使用pivot_table()实现数据透视功能

本篇文章给大家分享的是有关Python中怎么使用 pivot_table()实现数据透视功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

创新互联-云计算及IDC服务提供商,涵盖公有云、IDC机房租用、眉山联通机房、等保安全、私有云建设等企业级互联网基础服务,服务热线:13518219792

pivot_table

pivot()函数没有数据聚合功能,要想实现此功能,需要调用Pandas包中的第三个顶层函数:pivot_table(),在pandas中的工程位置如下所示:

pandas

  |

pivot_table()

如下,构造一个df实例:

Python中怎么使用 pivot_table()实现数据透视功能

调用如下操作:

Python中怎么使用 pivot_table()实现数据透视功能

参数index指明A和B为行索引,columns指明C列取值为列,聚合函数为求和,values是在两个轴(index和columns)确定后的取值用D列。得到结果如下:

Python中怎么使用 pivot_table()实现数据透视功能

其中聚合函数可以更加丰富的扩展,使用多个。如下所示,两个轴的交叉值选用D和E,聚合在D列使用np.mean(), 对E列使用np.sum, np.mean, np.max, np.min

Python中怎么使用 pivot_table()实现数据透视功能

得到结果如下所示:

Python中怎么使用 pivot_table()实现数据透视功能

函数原型

Python中怎么使用 pivot_table()实现数据透视功能

fill_value: 空值的填充值;

dropna: 如果某列元素都为np.nan, 是否丢弃;

margins: 汇总列, margins_name: 汇总名称

margins参数默认为False,如果设置为True,会得到每列的汇总,如下df实例

Python中怎么使用 pivot_table()实现数据透视功能

设置margins为True,汇总行索引为名称自定义为self_name:

Python中怎么使用 pivot_table()实现数据透视功能

注意

margins设置为True后,目前pandas 0.22.3版本只支持聚合函数为单个元素,不支持为list的情况,如下:

Python中怎么使用 pivot_table()实现数据透视功能

会报出异常:

Python中怎么使用 pivot_table()实现数据透视功能

透过pivot_table聚合功能源码(如下所示),我们发现它本身是通过调用groupby()及其agg()实现的。

grouped = data.groupby(keys, observed=False)agged = grouped.agg(aggfunc)

以上就是Python中怎么使用 pivot_table()实现数据透视功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


文章名称:Python中怎么使用pivot_table()实现数据透视功能
路径分享:http://pwwzsj.com/article/gpjjpi.html