DataFrame(14):对比MySQL学习“Pandas的groupby分组聚合”(超详细)(五)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: DataFrame(14):对比MySQL学习“Pandas的groupby分组聚合”(超详细)(五)

2)直接针对分组对象,调用agg()函数(很重要)

 下面知识的讲解,涉及到“聚合函数字符串”,这是我自己起的名字,类似于"sum"、“mean”、“count”、“max”、“min”,都叫做“聚合函数字符串”。同时还需要注意一点,agg()函数中还有一个axis参数,用于指定行、列。


df.agg(“mean”)

df.agg([“mean”, “sum”, “max”])

df.agg({“利润”:[“mean”, “sum”] , “年龄”:[“max”, “min”]})

df.agg(lambda x: x.mean())

① 传入单个聚合函数字符串

df = pd.DataFrame({"部门":["A", "A", "B", "B"],
                   "利润":[10, 20, 15, 28], 
                   "年龄":[20, 15, 18, 30]})
display(df)
df1 = df.groupby("部门").agg("mean")
display(df1)


结果如下:

image.png


② 传入多个聚合函数字符串

df = pd.DataFrame({"部门":["A", "A", "B", "B"],
                   "利润":[10, 20, 15, 28], 
                   "年龄":[20, 15, 18, 30]})
display(df)
df1 = df.groupby("部门").agg(["sum","mean"])
display(df1)


结果如下:

image.png


③ 传入一个字典:可以针对不同的列,提供不同的聚合信息。

df = pd.DataFrame({"部门":["A", "A", "B", "B"],
                   "利润":[10, 20, 15, 28], 
                   "年龄":[20, 15, 18, 30]})
display(df)
df1 = df.groupby("部门").agg({"利润":["sum","mean"],"年龄":["max","min"]})
display(df1)


结果如下:

image.png


④ 传入自定义函数

df = pd.DataFrame({"部门":["A", "A", "A", "B", "B", "B"],
                   "利润":[10, 32, 20, 15, 28, 10], 
                   "销售量":[20, 15, 33, 18, 30, 22]})
display(df)
df.groupby("部门").agg(lambda x:x.max()-x.min())


结果如下:

image.png

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL 关系型数据库 MySQL
在 MySQL 中使用 `GROUP BY` 子句
【8月更文挑战第12天】
44 1
|
9天前
|
SQL 关系型数据库 MySQL
学习MySQL操作的有效方法
学习MySQL操作的有效方法
27 3
|
9天前
|
SQL 关系型数据库 MySQL
如何学习 MySQL?
如何学习 MySQL?
22 3
|
24天前
|
关系型数据库 MySQL 数据处理
Mysql关于同时使用Group by和Order by问题
总的来说,`GROUP BY`和 `ORDER BY`的合理使用和优化,可以在满足数据处理需求的同时,保证查询的性能。在实际应用中,应根据数据的特性和查询需求,合理设计索引和查询结构,以实现高效的数据处理。
177 1
|
25天前
|
SQL 关系型数据库 MySQL
学习mysql基础操作
【8月更文挑战第20天】学习mysql基础操作
27 1
|
1月前
|
SQL 关系型数据库 MySQL
MySQL】-DQL(基本、条件、分组、排序、分页)详细版
通过这些查询方法,你可以高效地检索、分析和组织MySQL数据库中的数据,以满足各种应用需求。实践中,理解这些SQL语句的基础知识以及它们如何组合起来进行复杂的数据操作是至关重要的。
26 1
|
1月前
|
存储 关系型数据库 MySQL
MySQL中的DISTINCT与GROUP BY:效率之争与实战应用
【8月更文挑战第12天】在数据库查询优化中,DISTINCT和GROUP BY常常被用来去重或聚合数据,但它们在实现方式和性能表现上却各有千秋。本文将深入探讨两者在MySQL中的效率差异,结合工作学习中的实际案例,为您呈现一场技术干货分享。
154 0
|
2月前
|
SQL 关系型数据库 MySQL
MySQL获取分组里的最新数据如何写sql
MySQL获取分组里的最新数据如何写sql
32 0
|
2月前
|
SQL 关系型数据库 MySQL
学习mysql中使用inner join,left join 等
学习mysql中使用inner join,left join 等
|
18天前
|
弹性计算 关系型数据库 数据库
手把手带你从自建 MySQL 迁移到云数据库,一步就能脱胎换骨
阿里云瑶池数据库来开课啦!自建数据库迁移至云数据库 RDS原来只要一步操作就能搞定!点击阅读原文完成实验就可获得一本日历哦~