【Pandas 基础知识 GroupBy分组】

前言

      本文通过图解Pandas   groupby分组机制,介绍了Pandas对Series,DataFrame分组的基础知识和groupby对象的两个重要属性;总结了分组的万能公式和注意事项,适合初学者学习参考。

目录

一、 图解GroupBy机制

groupby对象的重要属性

二、Series分组操作

1.单键分组 

2.多键分组

3.生成唯一键对索引的多层索引

三 DataFrame分组操作

1.单键分组

 2.多键分组

四 遍历DataFrame

1.DataFrame的可迭代属性

总结


一、 图解GroupBy机制

 

 

groupby()函数使Series或DataFrame生成了一个groupby对象,这个对象没有进行任何计算,只是保存了这个对象所拥有的基本信息。

groupby对象的重要属性

1 groupby对象可以进行sum(),mean()等计算;

2 groupby对象支持迭代,会生成一个包含数组名和数据块的2维元组序列;

二、Series分组操作

记忆公式Series.groupby('key').sum()/mean()

1.单键分组 


import pandas as pd
import numpy as np

df=pd.DataFrame({'key1':['曹操','曹操','刘备','刘备','孙权'],
                'key2':['夏侯','许褚','赵云','马超','周瑜'],
                'data1':np.random.randn(5),
                'data2':np.random.randn(5)})
df['data1'].groupby(df['key1']) #生成groupby对象
df['data1'].groupby(df['key1']).sum() #对分组进行求和运算

2.多键分组

df['data1'].groupby([df['key1'],df['key2']]).sum()

 

3.生成唯一键对索引的多层索引

df['data1'].groupby([df['key1'],df['key2']]).sum().unstack()

三 DataFrame分组操作

 记忆公式:DataFrame.groupby('key').sum()/mean()

1.单键分组

df.groupby(df['key1']).sum()

 2.多键分组

df.groupby([df['key1'],df['key2']]).sum()

 

四 遍历DataFrame

1.DataFrame的可迭代属性

GroupBy对象支持迭代,生成一个包含数组名和数组块的2维元组序列;

for name,group in df.groupby(['key1','key2']):
    print(name)
    print(group)


总结

Series,DataFrame对象分组万能公式:

Series/DataFrame.groupby('key'/['key1','key2'...]).sum()/mean()

groupby后面传入的key生成新Series,DataFrame的index;

groupby后面传递的如果是列表或数组,此操作返回的对象是分组的DataFrame;
groupby后面传递的如果是单个列名,此操作返回的对象是Series;

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西瓜WiFi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值