
2022/3/14 4.9 透视表和重塑dataframe
file:///D:/Python39/envs/pydata/教材配套代码/模块四 数据处理Pandas/4.9 透视表和重塑dataframe.html 1/6
在数据分析中,常常需要用到数据透视表和交叉表,下面介绍pandas.DataFrame.pivot_table数据透视表和pandas.DataFrame.crosstab交叉表的用
法和区别。
4.9.1 数据透视表
典型的数据格式是扁平的,只包含行和列,不方便总结信息。数据透视表(pivot table) 是一种类似GroupBy的操作方法,常见于Excel中。数据透视
表将每一列数据作为输入,输出将数据不断细分为多个维度累计信息的二维数据表。
数据透视表用来做数据透视,可以通过一个或多个键分组聚合DataFrame中的数据,通过aggfunc参数决定聚合类型,是groupby的高级功能。
透视表就是将指定原有DataFrame的列分别作为行索引和列索引,然后对指定的列应用聚集函数(默认情况下式mean函数)。
为什么要使用pivot_table?
灵活性高,可以随意定制你的分析计算要求
脉络清晰易于理解数据
操作性强,报表神器
pivot_table调用方式:
pd.pivot_table(data, values = None,index = None,columns = None,aggfunc ='mean',fill_value = None,margin = False,dropna = True,
margins_name ='All' )
pd.pivot_table参数如下:
注意,在所有参数中,values、index、columns最为关键,它们分别对应excel透视表中的值、行、列:
data:DataFrame对象
values:是要进行汇总、统计等运算的列,可以是多个(list格式)
index:数据透视表的index,从原数据的列中筛选,是作为新表的列名,可以是多个(list格式)
columns:数据透视表的columns,从原数据的列中筛选,是作为新表的列名,可以是多个(list格式)
import
numpy
as
np
import
pandas
as
pd