一、SAC过程
SAC指的是分组操作中的split-apply-combine过程。
split 指将数据按照一定的规则拆分成若干组;apply是每一组独立地使用函数;而combine则是将每一组的结果组合成某一类数据结构。
二、groupby
(一)基本内容
1)根据某一列分组
grouped_single = df.groupby('School')
# 经过groupby后会生成一个groupby对象,
# 该对象本身不会返回任何东西,只有当相应的方法被
# 调用才会起作用
grouped_single.get_group('S_1').head()
2)根据某几列分组
grouped_mul = df.groupby(['School','Class'])
grouped_mul.get_group(('S_2','C_4'))
3)组容量与数组
grouped_single.size()
grouped_mul.size()
# 单列分组数
grouped_single.ngroups
# 2
grouped_mul.ngroups
# 7
4)组的遍历
for name,group in grouped_single:
print(name) #S_1,S_2
display(group.head())