pandas中Groupby使用(二)-对分组进行迭代

#-*- 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)})

for name,group in df.groupby('key1'):
    print name
    print group
#结果:
#a
#      data1     data2 key1 key2
#0 -1.389589  0.605121    a  one
#1  0.057731  1.387236    a  two
#4  0.973961 -1.540356    a  one
#b
#      data1     data2 key1 key2
#2 -0.476933 -0.110656    b  one
#3 -0.015403  0.117257    b  two

#多键的情况
for (k1,k2),group in df.groupby(['key1','key2']):
    print k1,k2
    print group
#结果:
#a one
#       data1     data2 key1 key2
# 0 -0.474012  0.159072    a  one
# 4 -2.049148  0.389898    a  one
# a two
#       data1     data2 key1 key2
# 1  2.471597  1.335773    a  two
# b one
#       data1     data2 key1 key2
# 2  0.249875  0.181691    b  one
# b two
#       data1     data2 key1 key2
# 3  0.458725  0.040619    b  two

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值