直接学习:https://edu.csdn.net/course/play/6861/326775
数据的汇总:
1、透视表功能
pd.pivot_table(data,values=None,index=None,columns=None,aggfunc=‘mean’,fill_value=None,margins=False,dropna=True,margins_name=‘ALL’)
data:指定需要构造透视表的数据集
values:指定需要拉入’数值‘框的字段列表
index:指定需要拉入’行标签‘框的字段列表
columns:指定需要拉入’列标签‘框的字段列表
aggfunc:指定数值的统计函数,默认为统计均值,也可以指定numpy模块中的其他统计函数
fill_value:指定一个标量,用于填充缺失值
margins:bool类型参数,是否需要显示行或列的总计值,默认为False
dropna:bool类型参数,是否需要删除整列为缺失的字段,默认为True
margins_name:指定行或列的总计名称,默认为ALL
2、代码如下:
import pandas as pd
data=pd.read_csv(r'C:\Users\Administrator\Desktop\python\零基础搞定Python数据分析与挖掘\零基础搞定Python数据分析与挖掘【326758】数据的读取(一)\第9章 pandas模块的介绍\diamonds.csv')
data.head()
pd.pivot_table(data,values='price',index='color',aggfunc='mean')
pd.pivot_table(data,values='price',index='color',columns='clarity',aggfunc='size')
3、分组汇总
groupby"方法":用于汇总前设定被分组的变量
aggregate"方法":可基于groupby的结果,作进一步的汇总统计
说明:在aggregate阶段,需以字典的形式传递参数,用于选择被统计的变量或对应的统计方法
4、代码如下
import numpy as np
# 通过groupby方法,指定分组变量
grouped = data.groupby(by=['color','cut'])
# 对分组变量进行统计汇总
result = grouped.aggregate({'color':np.size,'carat':np.min,'price':np.mean,'table':np.max})
print(result)
# 调整变量名的顺序
result = pd.DataFrame(result, columns=['color','carat','price','table'])
print(result)
# 数据集重命名
result.rename(columns={'color':'counts','carat':'min_weight','price':'avg_price',
'table':'max_table'}, inplace=True)
print(result)