python库学习笔记——分组计算利器:pandas中的groupby技术
最近处理数据需要分组计算,又用到了groupby函数,温故而知新。
分组运算的第一阶段,pandas 对象(无论是 Series、DataFrame 还是其他的)中的数据会根据你所提供的一个或多个键被拆分(split)为多组。拆分操作是在对象的特定轴上执行的。例如,DataFrame 可以在其行(axis=0)或列(axis=1)上进行分组。然后,将一个函数应用到各个分组并产生一个新值。最后,所有这些函数的执行结果会被合并到最终的结果对象中。结果对象的形式一般取决于数据上所执行的操作。
举例说明,生成随机DataFrame数据
输入
df = DataFrame({'key1':['a','a','b','b','a'],'key2':['one','two','one','two','one'],'data1':np.random.randn(5),'data2':np.random.randn(5)})
输出df
假设我们想要按 key1 进行分组,并计算 data1 列的平均值。
输入
df['data1'].groupby(df['key1']).mean() or df.groupby('key1')['data1'].mean()
输出
key1
a 0.310092
b -0.785952
Name: data1, dtype: float64
假设我们想要按 key1 ,key2进行分组,并计算 data1 列的平均值。
输入
df['data1'].groupby([df['key1'],df['key2']]).mean() or df.groupby(['key1','key2'])[['data1']].mean()
输出
key1 key2
a one -0.078753two 1.087782
b one -1.346429two -0.225475
Name: data1, dtype: float64
另外,我们可以对分组进行迭代,以多重键为例:
输入
for name,group in df.groupby('key1'):print (name)print (group)
输出
adata1 data2 key1 key2
0 0.033971 0.066088 a one
1 1.087782 -0.095748 a two
4 -0.191477 -0.057805 a one
bdata1 data2 key1 key2
2 -1.346429 0.648059 b one
3 -0.225475 1.440988 b two
参考资料:《利用python进行数据分析》
转载于:https://www.cnblogs.com/mtcnn/p/9411633.html
python库学习笔记——分组计算利器:pandas中的groupby技术相关推荐
- 深度学习常用python库学习笔记
深度学习常用python库学习笔记 常用的4个库 一.Numpy库 1.数组的创建 (1)np.array() (2)np.zeros() (3)np.ones() (4)np.empty() (5) ...
- H.266/VVC相关技术学习笔记16:VTM6.0中的CIIP技术(帧内帧间联合预测)
今天讲一下目前VTM6.0版本中的CIIP技术,CIIP即为帧内帧间联合预测技术,这属于Merge系列的一个分支. 该技术需要先计算当前预测块的帧内预测值,即用Planar.DC.角度预测等传统的帧内 ...
- Python 库学习笔记—— BeautifulSoup 处理子标签、后代标签、兄弟标签和父标签
首先,我们来看一个简单的网页https://www.pythonscraping.com/pages/page3.html,打开后: 右键"检查"(谷歌浏览器)查看元素: 用导航树 ...
- Python学习笔记(十七)——Pandas库
数组只能存储一种类型的数据, 同时, 数组提供了许多方便统计计算的功能 (如平均值 mean .标准差 std 等) pandas与numpy的区别 pandas 是基于 numpy 数组构的, 但 ...
- python xlwings 切片_Python xlwings库学习笔记(1)
Python xlwings库学习笔记(1) Python是最近几年很火的编程语言,被办公自动化的宣传吸引入坑,办公自动化必然绕不开Excel的操作,能操作Excel的库有很多,例如: xlrd xl ...
- python标准库学习笔记
原创:python标准库学习笔记 数据结构 bisect 模块里实现了一个向列表插入元素时也会顺便排序的算法. struct - 二进制数据结构:用途:在 Python 基本数据类型和二进制数据之间进 ...
- 全国计算机等级考试二级Python精品题库学习笔记1
全国计算机等级考试二级Python精品题库学习笔记1 精品试卷01 精品试卷01程序题 基本操作题 2:随机验证码 基本操作题 3:比赛成绩计算 Turtle 绘图题:同心圆 简单应用题 2:员工工资 ...
- python数据挖掘学习笔记】十.Pandas、Matplotlib、PCA绘图实用代码补充
#2018-03-23 18:56:38 March Friday the 12 week, the 082 day SZ SSMR https://blog.csdn.net/eastmount/a ...
- Python pillow库学习笔记
Python pillow库学习笔记 PIL( Python Imaging Library)是 Python 的第三方图像处理库,由于其功能丰富,API 简洁易用,因此深受好评. 自 2011 年以 ...
最新文章
- 工作中用不到的技术要不要学?
- pythonGB2312乱码问题
- 【技术综述】有三AI不得不看的技术综述
- VTK:PolyData之ExtractSelectionCells
- Windows XP系统的“恢复”办法
- c语言编写考试程序,c语言考试编写三个程序:1.从键盘输入一些字符,逐个把它们送到磁? 爱问知识人...
- CCF201412-2 Z字形扫描
- mysql c接口返回自增id_详解mysql插入数据后返回自增ID的七种方法
- 计算机应用新教程,计算机应用基础教学教程(新).doc
- uni-app云打包成ipa文件安装到iPhone上全过程记录
- android studio调试时在断点停不下来
- cnn实现手写识别字体代码详解
- 2022 CCF中国软件大会(CCF Chinasoft)“CCF-华为胡杨林基金-系统软件专项”论坛成功召开...
- 在ipad上播放flash大集合
- echarts修改数据视图格式
- 区块链行业领袖汇聚一堂,共同畅谈IEO
- Pytorch官方文档英语翻译
- 外国程序员应该访问的最佳网站
- Mysql 多表联合更新
- 北斗GPS定位系统原理