pandas 聚合 df.groupby.agg
#df.groupby.agg ( arg, *args, **kwargs )
#聚合:使用可调用、字符串、dict或字符串/可调用列表进行聚合import pandas as pddf = pd.DataFrame({'A':['a','a','b','c','b','c','d'],'B':[4,5,3,6,7,3,2],'C':[22,21,43,55,31,55,66],'D':[123,223,441,554,234,665,772]})
print(df)
#分组
df_groupby = df.groupby('A')
print('组内的键值:\n{}'.format(df_groupby.groups.keys()))
print("观察其中某组 'a':\n{}".format(df.iloc[df_groupby.groups['a']]))
print('查看所有分组:')
for index,data in df_groupby:print(index)print(data)
#多列分组
df_grb_morecols = df.groupby(['A','B'])
print('组内的键值:\n{}'.format(df_grb_morecols.groups.keys()))
print("观察其中某组 ('a', 4):\n{}".format(df.iloc[df_grb_morecols.groups[('a', 4)]]))
print('查看所有分组:')for index,data in df_grb_morecols:print(index)print(data)
#聚合
#默认情况对分组之后其他列进行聚合df_agg = df.groupby('A').agg(['min','mean','max'])
print(df_agg)
#对分组后的部分列进行聚合
#某些情况,只需要对部分数据进行不同的聚合操作,可以通过字典来构建
num_agg = {'C':['min','mean','max']}
print('部分列进行聚合:\n{}'.format(df.groupby('A').agg(num_agg)))num_agg = {'C':['min','mean','max'],'D':['min','max']}
print('部分列进行聚合:\n{}'.format(df.groupby('A').agg(num_agg)))
输出结果:
A B C D
0 a 4 22 123
1 a 5 21 223
2 b 3 43 441
3 c 6 55 554
4 b 7 31 234
5 c 3 55 665
6 d 2 66 772
组内的键值:
dict_keys(['a', 'b', 'c', 'd'])
观察其中某组 'a':A B C D
0 a 4 22 123
1 a 5 21 223
查看所有分组:
aA B C D
0 a 4 22 123
1 a 5 21 223
bA B C D
2 b 3 43 441
4 b 7 31 234
cA B C D
3 c 6 55 554
5 c 3 55 665
dA B C D
6 d 2 66 772
组内的键值:
dict_keys([('a', 4), ('a', 5), ('b', 3), ('b', 7), ('c', 3), ('c', 6), ('d', 2)])
观察其中某组 ('a', 4):A B C D
0 a 4 22 123
查看所有分组:
('a', 4)A B C D
0 a 4 22 123
('a', 5)A B C D
1 a 5 21 223
('b', 3)A B C D
2 b 3 43 441
('b', 7)A B C D
4 b 7 31 234
('c', 3)A B C D
5 c 3 55 665
('c', 6)A B C D
3 c 6 55 554
('d', 2)A B C D
6 d 2 66 772B C D min mean max min mean max min mean max
A
a 4 4.5 5 21 21.5 22 123 173.0 223
b 3 5.0 7 31 37.0 43 234 337.5 441
c 3 4.5 6 55 55.0 55 554 609.5 665
d 2 2.0 2 66 66.0 66 772 772.0 772
部分列进行聚合:C min mean max
A
a 21 21.5 22
b 31 37.0 43
c 55 55.0 55
d 66 66.0 66
部分列进行聚合:C D min mean max min max
A
a 21 21.5 22 123 223
b 31 37.0 43 234 441
c 55 55.0 55 554 665
d 66 66.0 66 772 772
>>>
pandas 聚合 df.groupby.agg相关推荐
- 【Pandas分组聚合】 groupby()、agg() 方法的使用
Pandas分组聚合 创建一个dataframe结构 分组函数 groupby() 初识分组聚合 多重行索引分组聚合 对多列数据进行分组聚合 综合应用 聚合函数 agg(aggregate) 求 多列 ...
- pandas使用groupby函数进行分组聚合、使用agg函数指定聚合统计计算的数值变量、并自定义统计计算结果的名称(naming columns after aggregation)
pandas使用groupby函数进行分组聚合.使用agg函数指定聚合统计计算的数值变量.并自定义统计计算结果的名称(naming columns after aggregation in dataf ...
- pandas使用groupby函数进行分组聚合并使用agg函数将每个分组特定变量对应的多个内容组合到一起输出(merging content within a specific column of g
pandas使用groupby函数进行分组聚合并使用agg函数将每个分组特定变量对应的多个内容组合到一起输出(merging content within a specific column of g ...
- Pandas(鸢尾花案例:groupby, agg, apply)
数据的分组和聚合 pandas groupby 方法 pandas agg 方法 pandas apply 方法 案例讲解 鸢尾花案例 婴儿姓名案 数据的分组&聚合 -- 什么是groupby ...
- Pandas DataFrame: groupby agg的使用
@创建于:2022.07.01 @修改于:2022.07.01,2022.07.09 文章目录 1.构建样例数据(无Null值和有Null值) 2.agg常见聚合函数 3.agg匿名聚合函数 4.ag ...
- pandas分组groupby(agg,transform),apply
快速浏览 pandas简单介绍和本文说明 一.SAC过程 二.groupby函数 1. groupby分组函数的基本内容 单/多列分组 组容量与组数 组的遍历 level参数(用于多级索引)和axis ...
- pandas df.groupby()分组后的数据访问,set_index的用法
分组方式 注意第一种与第三种方式的区别. import pandas as pd dic={'省份':['A','A','A','B','C'],'城市':['a','a','a_','b','c', ...
- python pandas聚合_Python Pandas分组聚合的实现方法
Pycharm 鼠标移动到函数上,CTRL+Q可以快速查看文档,CTR+P可以看基本的参数. apply(),applymap()和map() apply()和applymap()是DataFrame ...
- Pandas转pivot, groupby等结果为dataFrame--彻底解决多表头问题
Pandas转pivot, groupby等结果为dataFrame 问题背景: 在用Pandas进行数据分析和处理的时候,常会用到如goupby(),pivot()等方法,这些方法极大简化了我们的操 ...
- 【Python基础】Pandas笔记---深入Groupby,它的功能没有你想的这么简单
点击上方"潜心的Python小屋"关注我们,第一时间推送优质文章. 前言 大家好,我是潜心.上篇文章提到了Groupby,但其中举例的代码有点问题,在提取序列时用到了for循环,效 ...
最新文章
- from __future__ import absolute_import, division, print_function
- eclipse中生成的html存在中文乱码问题的解决方法
- C++中public,protected,private访问范围和用法
- 火狐(FireFox)
- 探秘HDFS —— 发展历史、核心概念、架构、工作机制 (上)| 博文精选
- 信息学奥赛一本通(1114:白细胞计数)
- 活动报名 | 2017无人驾驶智能车Hackathon挑战赛
- SQLServer------基本操作
- steam远程畅玩无法连接远程计算机,Steam 如何进行远程畅玩?
- c语言中变量要加引号吗,CMake中引号用法总结
- JAVA学习记录(冲冲冲)
- 【Java攻城狮宝典】04-for循环
- 7 年“键盘手”没在意!某程序员手疼查出骨肿瘤,已让骨头成了“豆腐渣”...
- 哔哩哔哩2020校园招聘游戏测试笔试卷(二)知识点解析
- Flink集群部署OnYarn模式
- CART分类树原理及示例
- PS学习笔记(05)
- Unity鼠标控制物体360°旋转和点击移动
- th themlefy 计算_航程计算的数学模型
- 蚂蚁金服Docker网络技术实践
热门文章
- 打印机服务器找不到网络路径,分享0x80070035找不到网络路径的解决方法
- linux postgresql 创建数据库,第 23 课 PostgreSQL 创建自己的数据库、模式、用户
- 电流、电压、功率的计算方式
- C/C++ 程序员的编程修养
- 【图片】 3D打印的一些小东西 暗黑
- mysql时间作为条件查询_MySQL的时间条件查询
- 转换到coff期间_error LNK1123: 转换到 COFF 期间失败
- linux使用tab键联想,Linux 下python 如何设置使用tab键
- IDEA颜色及主题配色方案记录,持续更新中。。。
- vue3.2 lottie-web动画+引入json动画