#-*- coding:utf-8 -*-
import pandas as pd
import numpy as np
df=pd.DataFrame({'key1':['a','a','b','b','a'],'key2':['one','two','one','two','one'],
'data1':np.random.randn(5),'data2':np.random.randn(5)})
#按key1进行分组,并计算data1列的平均值。
grouped1=df['data1'].groupby(df['key1']).mean()
print grouped1
#结果:key1
#a 1.386036
#b -1.026542
#按key1,key2进行分组,并计算data1列的平均值。
grouped2=df['data1'].groupby([df['key1'],df['key2']]).mean()
print grouped2
#结果:
#key1 key2
#a one 1.927353
# two 0.303403
#b one -1.629209
# two -0.423874
#按key1进行分组,计算data1,data2的平均值
print df.groupby('key1').mean()
#结果: data1 data2
#key1
#a 1.386036 -0.617593
#b -1.026542 0.150912
#按key1,key2进行分组,计算data1,data2的平均值
print df.groupby(['key1','key2']).mean()
#结果:
# data1 data2
#key1 key2
#a one 1.927353 -1.127173
# two 0.303403 0.401567
#b one -1.629209 -0.027238
# two -0.423874 0.329062
#求groupby的size
print df.groupby('key1').size()
#结果:
#key1
#a 3
#b 2
pandas中grouopby使用(一)
最新推荐文章于 2023-06-08 14:23:18 发布