参数详解python_python中的数据透视表pivot_table参数详解

官方文档参考:Jupyter Notebook Viewer

其他文档参考:Pandas_聚合数据_pivot_table()_Python_学习笔记-CSDN博客

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

在需要多个group by的时候,可以优先考虑此函数

1.index

相当于sql里的group by后面的列,用于分组的列,相当于行索引

参数详解python_python中的数据透视表pivot_table参数详解_第1张图片

如果赋值的是列表,那么从左到右依次聚合,会自动合并第一列相同的值

2.values

相当于sql里的聚合函数操作的列,放在聚合函数里的列

参数详解python_python中的数据透视表pivot_table参数详解_第2张图片

上面说明是对Price聚合,如果不指定其他参数 ,默认聚合是求平均

3.aggfunc

相当于sql里的聚合函数,如果不指明,默认求平均.可以接受列表,即对values作不同的聚合,也可以接受字典,即对不同的values作不同的操作,也可以将字典里的值改为列表形式的,即对某列作几种不同的操作.切记,对于aggfunc,操作的是values后面的值,而不是columns后面的值.

参数详解python_python中的数据透视表pivot_table参数详解_第3张图片

参数详解python_python中的数据透视表pivot_table参数详解_第4张图片

这个就是对Quantity列求count,对Price列求和

参数详解python_python中的数据透视表pivot_table参数详解_第5张图片

对Price列分别求和和求平均两种操作,可以看出,上面的mean*len=sum,len相当于count

4.columns

相当于列索引,就是更细化地展示一些内容.

参数详解python_python中的数据透视表pivot_table参数详解_第6张图片

参数详解python_python中的数据透视表pivot_table参数详解_第7张图片

从上面两图可看出,以john smith为例,在图一中总和是40000,可以细化成下面几部分:

80000=CPU(35000)+Maintenance(5000)+Monitor(0)+Software(0)

相当于把总的情况细致化,可以看清楚每部分的情况.同时也发现一个问题,有NAN,其实也就是0,这就需要用fill_value来填充.

5.fill_value

就是填充NAN的.

参数详解python_python中的数据透视表pivot_table参数详解_第8张图片

6.margins

不是简单地求和,而是与 aggfunc 的规则相同,为True时会添加行/列的总计.

你可能感兴趣的:(参数详解python)