在数据分析时,分组也是一个常用的功能,比如分别统计每个月的股票波动率、每个部门的人数、每个季度的利润等等。在Pandas中提供了groupy
方法对数据进行分组。Pandas中的groupby
一般包括以下三个步骤:
- 拆分,依据指定的规则将数据拆分为不同的组合。
- 执行函数,将一个方法相对独立地在每个组合上执行。
- 组合,将每个组合上执行的结果组合到一个结果集中。
下面我们以图中的数据来演示上述各项功能。
1、分组
使用groupby
方法,将df3
进行分组,并使用list
查看分组的内容。
g1 = df3.groupby("E")
g1
list(g1)
可以看到,分组实际上是将指定分组的列不同值作为key
(默认忽略np.nan
,可以使用dropna=False
配置修改),再将dataframe中相应的数据拆分出来作为其value
。
2、求和示例
分组后的对象,可以使用多种内置聚合函数,比如求和sum
、平均值mean
、标准差std
等。本例对分组后的对象g1
进行求和,计算根据E
列分组后,其他各列求和的结果。
也可以计算指定列的求和结果,比如只计算A
列的和。