Pandas 进阶四:数据筛选/分组/聚合,比 Excel 快十倍的操作技巧
作者:互联网
2026-03-24
各位新手小伙伴,经过入门篇的3篇学习,咱们已经掌握了Pandas的基础操作——读取数据、处理缺失值、修改DataFrame结构,是不是已经感受到了它的便捷?
- 《Pandas 入门一:零基础也能懂!3步安装+10分钟玩转数据读取》
- 《Pandas 入门二:DataFrame 核心操作,新手也能轻松筛选/修改数据》
- 《Pandas 入门三:数据清洗必学!缺失值/重复值处理,一步到位不踩坑》
但实际处理数据时,我们往往需要更“精准”的操作:比如从几千条数据里挑出符合条件的记录、按类别统计数据、计算分组后的平均值/总和……这些操作在Excel里要反复筛选、插入函数,步骤繁琐还容易错,而Pandas只需1-2行代码就能搞定,速度直接快10倍!
今天这篇进阶文,就带大家吃透3个核心技能:数据筛选(单条件/多条件)、数据分组(groupby)、数据聚合,全程用真实场景案例演示,新手跟着跑就能会~

一、先准备测试数据
为了让大家直观理解,咱们用“电商订单数据”作为示例(模拟真实场景,包含订单号、用户ID、商品类别、消费金额、支付时间等字段),先运行下面的代码生成数据:
运行后会得到这样的DataFrame(清晰展示所有订单信息):
接下来所有操作都基于这个数据集,大家可以直接复制代码运行~
二、数据筛选:精准挑出你要的记录
筛选就是“从DataFrame中提取符合条件的行/列”,比如“挑出消费金额>1000的订单”“找出商品类别是电子产品且给了好评的记录”,Pandas的筛选语法比Excel的“自动筛选”更灵活。
1. 单条件筛选(基础款)
语法:df[df['列名'] 条件表达式],比如“筛选消费金额>1000的订单”:
运行结果(自动筛选出符合条件的5条记录):
再举2个常用例子,一看就懂:
- 筛选“商品类别是服装”的订单:
- 筛选“2024年1月5日之后的订单”(日期筛选):
2. 多条件筛选(实用款)
实际场景中常需要多个条件,比如“商品类别是电子产品 且 消费金额>2000”“用户ID是U001 或 给了好评”,这里要注意两个关键符号:
- &:表示“且”(两个条件必须同时满足),前后条件要加括号;
- |:表示“或”(满足一个条件即可),前后条件也要加括号。
示例1:筛选“商品类别是电子产品 且 消费金额>2000”的订单:
结果(只筛选出2条符合条件的记录):
示例2:筛选“用户ID是U001 或 是否好评为True”的订单:
新手避坑:
- 筛选时的条件符号是 ==(等于)、>(大于)、<(小于),不要写成 =(赋值符号);
- 多条件必须用 &/|,不能用 and/or(Python语法规定);
- 多条件前后要加括号,否则会报错。
三、数据分组:按类别归类(groupby核心)
分组就是“按某个字段的类别拆分数据”,比如“按商品类别分组”“按用户ID分组”,之后可以对每组数据单独操作。Pandas中用 df.groupby('分组列名') 实现,相当于Excel的“数据透视表-行标签”。
1. 基础分组:按单个字段分组
比如“按商品类别分组”,看看每个类别的订单数量:
运行结果(清晰展示每个类别的订单数):
再比如“按用户ID分组”,看看每个用户的总消费金额:
结果:
2. 按多个字段分组
如果想更细致分组,比如“按商品类别+是否好评分组”,统计每组的平均消费金额:
结果(展示每个组合的平均值):
关键理解:
- groupby 本身不返回具体数据,而是返回一个“分组对象”;
- 必须在分组后接“聚合函数”(比如 size() 统计个数、sum() 求和、mean() 求平均),才能得到结果;
- 可以指定只对某一列操作(比如 groupby('用户ID')['消费金额'].sum()),也可以对所有数值列操作(直接 groupby('用户ID').sum())。
三、数据聚合:对分组后的数据计算(常用聚合函数)
聚合就是“对分组后的数据进行统计计算”,比如求和、求平均、求最大值等,Pandas提供了很多实用的聚合函数,新手记住下面这几个就够日常用了:
聚合函数 | 作用 | 示例 |
| 求和 | 总消费金额 |
| 求平均值 | 平均消费金额 |
| 求最大值 | 最高消费金额 |
| 求最小值 | 最低消费金额 |
| 统计非缺失值个数 | 有效订单数 |
| 统计分组内的总个数 | 订单总数(包含缺失值) |
1. 实战:多聚合函数一起用
比如“按商品类别分组”,同时计算每个类别的“订单数、总消费金额、平均消费金额、最高消费金额”:
运行结果(一次性得到多维度统计信息,堪比Excel透视表):
这个结果太实用了!如果用Excel做,需要手动插入4个函数,而Pandas一行代码就能搞定,还能直接导出为Excel文件(后续实战篇会讲)。
四、综合实战:筛选+分组+聚合
把前面的技能结合起来,解决一个真实问题:“筛选出2024年1月5日之后的订单,按商品类别分组,统计每组的好评数和好评率”。
步骤拆解:
- 筛选2024-01-05之后的订单;
- 按商品类别分组;
- 统计每组的好评数(是否好评为True的个数)和总订单数;
- 计算好评率(好评数/总订单数)。
代码实现:
运行结果:
是不是超级清晰?从筛选到分组再到聚合,3步就能得到核心统计结果,比Excel高效太多!
五、新手必记:核心语法速查表
功能 | Pandas语法 | 示例 |
单条件筛选 |
|
|
多条件筛选 |
|
|
分组 |
|
|
分组+聚合 |
|
|
多聚合函数 |
|
|
六、总结
这篇文章我们掌握了Pandas进阶的3个核心技能:
- 数据筛选(单条件/多条件):精准提取需要的记录;
- 数据分组(groupby):按类别拆分数据,方便分类处理;
- 数据聚合:对分组数据统计计算,快速得到汇总结果。
这些操作覆盖了日常数据处理的80%场景,比如统计报表、数据汇总、筛选分析等,比Excel更高效、更灵活,新手多练2遍就能熟练掌握~
相关标签:
相关推荐
专题
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
最新数据
相关文章
NanoClaw 开源轻量级个人AI助手 安全可靠的OpenClaw替代方案
MonsterClaw 采用 OpenClaw 技术打造的本地化AI运行平台
TinyClaw 由TinyAGI推出的开源轻量级多智能体协作框架
携程酒店业务借助NebulaGraph实现月均风控止损逾百万元
稀宇科技开源MiniMax Office Skills生产级办公文档引擎
ToClaw由ToDesk打造的专业定制AI智能体
TypeNo 免费开源的中文AI语音输入法 无需配置直接使用
Sub2API 开源人工智能API中转网关平台 具备多账户管理功能
阿里通义推出视频生成音频框架PrismAudio
Luma AI发布Uni-1模型实现图像理解与生成一体化
AI精选
