pandas中的groupby()函数是非常常见的一个函数,顾明思议,这个函数的意思就是根据参数来把DataFrame进行分组。
这个函数有大概两种使用方法:
根据表本身的某一列或多列内容进行分组聚合
通过字典或者Series进行分组
根据表本身的某一列或多列内容进行分组聚合:
这个是groupby的最常见操作,根据某一列的内容分为不同的维度进行拆解,将同一维度的再进行聚合
按一列进行聚合:
import pandas as pd
import numpy as np
df = pd.DataFrame({'key1':list('aabba'),
'key2': ['one','two','one','two','one'],
'data1': np.random.randn(5),
'data2': np.random.randn(5)})
for i in df.groupby('key1'):
print(i)
# 输出:
('a', data1 data2 key1 key2
0 -0.293828 0.571930 a one
1 1.872765 1.085445 a two
4 -1.943001 0.106842 a one)
('b', data1 data2 key1 key2
2 -0.466504 1.262140 b one
3 -1.125619 -0.836119 b two)
按多列进行聚合,