透视表
什么是透视表
pandas提供了类似于Execl的透视表功能。为了更好的展示数据,临时的将原有的表结构进行了变更,根据这个变化数据也会变化。
数据准备
这里我事先准备了一个execl文件,并将其转化为dataframe。
生成透视表
默认情况
透视表的方法是:pivot_table
这里,指定了生成透视表时的index为name。可以看到,生成的透视表对index进行了聚合,去除了重复,并且每一项都是平均值。
例如Trantow-Barrows这一行,在原始数据中,它对应的price为:30000、10000和5000,聚合后取平均值为15000,Quantity这一列同理。
指定聚合的方法
通过参数aggfunc指定聚合的方法:
可以看到,还是Trantow-Barrows这一行,现在他的price和Quantity都是原始数据的和。
按多个index生成透视表
还有就是如果对数据结构预先比较了解,还可以这样:
一个Manager下可能有多个Rep,这样显示就比较清楚。
指定显示的列
除了index,还可以通过values参数来制定显示哪些列:
这里还是没有指定aggfunc,所以是默认取平均值。
指定column
可以看到在price和quantity下,又根据product把它们再次细分。
但是这个表中有一些NaN的值,可以通过参数fill_value进行填充: