pandas groupby使用

import pandas as pd
from pandas import *
import numpy as np
df = DataFrame({‘key1’:[‘a’,’a’,’b’,’b’,’a’],
‘key2’:[‘one’,’two’,’one’,’two’,’one’],
‘data1’:np.random.randn(5),
‘data2’:np.random.randn(5)
})
print(df)
grouped = df[‘data1’].groupby(df[‘key1’])
print(grouped.mean())

  data1     data2 key1 key2

0 0.702597 -0.057953 a one
1 0.605195 -1.788537 a two
2 -0.637318 -0.710580 b one
3 0.473174 0.652865 b two
4 -0.315555 0.190096 a one
key1
a 0.330746
b -0.082072
Name: data1, dtype: float

也可以一次传入多个数组

grouped = df[‘data1’].groupby(df[‘key1’])
means = df[‘data1’].groupby([df[‘key1’],df[‘key2’]]).mean()
print(means)
data1 data2 key1 key2
0 -1.559788 -1.524839 a one
1 -0.754890 -0.376088 a two
2 0.859864 0.059619 b one
3 0.132361 -0.170424 b two
4 0.371940 1.779507 a one
key1 key2
a one -0.593924
two -0.754890
b one 0.859864
two 0.132361
Name: data1, dtype: float64

Process finished with exit code 0

from pandas import *
import numpy as np
df = DataFrame({‘key1’:[‘a’,’a’,’b’,’b’,’a’],
‘key2’:[‘one’,’two’,’one’,’two’,’one’],
‘data1’:np.random.randn(5),
‘data2’:np.random.randn(5)
})
print(df)
print(‘+++++++++++++++++++++++++++++’)
for name,group in df.groupby(‘key1’):
print(name)
print(group)
print(‘++++++++++++++++++++++++++++++’)
for name,group in df.groupby(‘key1’):
print(group)

pieces = dict(list(df.groupby(‘key1’)))
print(pieces)
{‘a’: data1 data2 key1 key2
0 -0.939595 0.509545 a one
1 0.255103 -1.394938 a two
4 -0.721323 0.274230 a one, ‘b’: data1 data2 key1 key2
2 0.173014 1.288419 b one
3 0.300537 -1.816507 b two}

import pandas as pd
from pandas import *
import numpy as np
people = pd.DataFrame(np.random.randn(5,5),columns=[‘a’,’b’,’c’,’d’,’e’],
index= [‘Joe’,’Steve’,’Wes’,’Jim’,’Travis’])
print(people)
key_list = [‘one’,’one’,’one’,’two’,’two’]
result = people.groupby([len,key_list]).min()
print(result)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值