更新时间:2022-11-01 来源:黑马程序员 浏览量:
分组聚合的第一个步骤是将数据拆分成组。在Pandas中,可以通过groupby()方法将数据集按照某些标准划分成若干个组,该方法的语法格式如下:
groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)
部分参数表示的含义如下:
(1)by:用于确定进行分组的依据。
(2)axis:表示分组轴的方向,可以为0(表示按行)或1(表示按例),默认为0。
(3)level:如果某个轴是一个MultiIndex对象(索引层次结构),则会按特定级别或多个级别分组。
(4)as_index:表示聚合后的数据是否以组为标签作为索引的DataFrame对象输出,接收布尔值,默认为True。
(5)sort:表示是否对分组标签进行排序,接收布尔值,默认为True。
通过groupby()方法执行分组操作,会返回一个GroupBy对象,该对象实际上并没有进行任何计算,只是包含一些关于分组键(比如df_obj[ 'key1'])的中间数据而已。一般,使用Series调用groupby()方法返回的是SeriesGroupBy对象,而使用DataFrame调用groupby()方法返回的是DataFrameBy对象。
在进行分组时,可以通过groupby()方法的by参数来指定按什么标准分组,by参数可以接收的数据有多种形式,类型也不必相同,常用的分组方式主要有以下4种:
◆列表或数组,其长度必须与待分组的轴一样。
◆DtaFrame对象中某列的名称。
◆字典或Series对象,给出待分组轴上的值与分组名称之间的对应关系。
◆函数,用于处理轴索引或索引中的各个标签。