快捷搜索:

groupby去重

Groupby 分组后,如果没有对分组后的数据进行操作,如对每组求和 取平均 取最小等操作,分组后直接显示,则默认显示

该分组的第一条数据。

第一幅图是没有进行groupby操作后的数据,数据共有48条

下图是在第一幅的基础上按照s_id进行groupby的操作,可以看出只显示按照s_id分组后每组的第一条数据

下图是在第一幅的基础上对s_id,c_id进行分组的每组的第一条数据,在第一副中,前三条为第一组,4-6条为第二组,每组

中s_id,c_id都是相同的。

观察第一幅图,由于s_id,c_id相同时,s_score也相同,所以使用(s_id,c_id)和(s_id,c_id,s_score)进行groupby操作的结果是相同的,如下图

上面的语句在groupby后都没有进行聚合操作,所以默认显示每个分组中的第一条数据,如下图对分组后的某个字段进行求和。

在第一幅的基础上按照每个分组(同样是s_id c_id相同的为一组)对s2.s_score求和后显示第一条数据。具体为下面第二幅图。

也即下面第一幅的前三条数据其实是三个分组的第一条数据

经验分享 程序员 微信小程序 职场和发展