数据聚合数据聚合是数据处理的最后一步,通常是要使每一个数组生成一个单一的数值。 数据分类处理:
1.数据分类处理的核心: groupby()函数 导入模块: import pandas as pd 生成假数据 df = DataFrame({"sailer":np.random.randint(0,3,size=50), 如: 对数据进行分组,聚合操作 根据item进行分组,然后求出各个菜品的平均价格 g = df.groupby(by=["item"])["price"] 表现形式如上边,数据格式为series 然后在根据sailer和item进行分类。 ret = df.groupby(by = ["sailer","item"])[["price"]].mean() #price值变成dataframe二维数如下图: 根据条件进行分组,然后自定义方法展示数据:如下 ret2 = df.groupby(by = ["sailer","item"]) aggregate()或agg()是指在指定轴上使用一个或多个操作进行聚合。 分组后对几个列添加不同的聚合映射关系 如下:对price求平均值,对重量求和 ret2 = df.groupby(by = ["sailer","item"]) 分组后使用透视表对数据进行聚合操作 如下:对price、weight分别进行求平均值和最大值操作。
高级数据聚合调用transform和apply实现上变相同的功能 df.groupby(["sailer","item"])[["price"]].apply(np.min) #因为min,mean,median等聚合函数在numpy定义了,所以,调用聚合函数得去numpy中调用 # transform原来的数据有多长,现在的数据就有多长 使用transform对数据进行分组聚合操作 df1 = df.groupby(["sailer","item"])[["price"]].transform(np.mean) df1.tail()
|
|