Pandas 数据分组 上|学习笔记

简介: 快速学习 Pandas 数据分组 上

开发者学堂课程【高校精品课-华东师范大学 - Python 数据科学基础与实践Pandas 数据分组 上】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1067/detail/15396


Pandas 数据分组 上

 

下面来学习 pandas 中数据分组聚合与透视。关于第五个内容:pandas 数据可视化,就看给大家提供的资料,以及在线平台上放的数据可视化的视频资料。

pandas 数据分组聚合与透视,第一部分有四小节内容,主要来介绍第一节和第四节。

第一节就是一般的分组GroupBy Mechanics,是数据框系列要对数据进行分组;然后第二节是将数据聚合Data Aggregation,在分组上面再做一些聚合统计,汇总函数,这部分就没时间讲了,可以看提供的资料;

第三部分主要是将 apply:general split-apply-combine 函数用在分组上面,这个也自己了解;第四节内容是讲数据透视表和交叉表,同学们如果用过电子表格就知道把这个透视表是很重要的一个内容。

Data aggregation and group operations

那么下面来看看第一节数据分组,那么开始把整个第六部分的内容介绍一下。就是做数据的汇总、分组操作:

(1)包括把 pandas 对象也就是数据对象(serious或者dataframe),按照关键字段(key)进行分组。

(2)然后在分组上做各种汇总。比如计数,平均值,标准差等等,也可以是用户自定义的函数。

(3)然后应用组内转换和其他一些操作,比如标准化,线性回归,排序,子集选择。

(4)计算透视表和交叉列表。

(5)进行分位数的分析和一些统计组分析。

先看第一节 pandas 的分组机制,分组机制这有编辑语言库的作者。其描述的很经典,分组主要就是做三个阶段的工作:一个将数据进行分割 split,然后分割上面再做应用,应用用一些汇总统计函数。然后再做结合合并,结合合并就是函数作用以后会产生一些结果,这个结果又是一个单独的数据对象,那么这里知道它是要在一些关键字段上进行处理,所以这个关键的分组字段很重要,它可以是单独的一列也可以是多列,也可以是数据里面没有的名字,也可以是索引,所以key 的的形式很多。

习惯上认为 key 就是某一类,某一个属性。但是在实际应用里,key 就是一种类型,它可能有多种类型,后面的实验里面会给大家相关例子。

下面来先加载相关包,然后创建一个四列的数据框,有 key1,key2,data1,data2,这个创建的数据有四列,然后中间都是创建的数据,key1是a,b;key2是 one,two 的值,data1,data2里面是具体的数值。

那么我现在假设想用 key1作为一个 label、关键词、标签来求 data1的平均值,因为 key1要作为 label,它里面有两个值,分别是a和b,那么需要求每个 label 的平均值就要用到分组汇总的方法。

这里可以在 data1上去调用分组,也可以在真题上做分组,有很多方法可以做到刚刚的要求,一种是在 data1列上做操作,当然也可以在整体数据上做操作。先看在 data1这一列上做操作,数据框里面取一列,列的名字放在中括号中,然后用分组的函数 groupby,括号里要指定按照什么关键字进行分组,用的是 key1这一列,在数据框里面取某一列,是数据框的名字加中括号,然后用这个列名加引号引起来,也可以用df【‘key1’】。但是要求规范化、标准化,还是用中括号来取某一列。

这里来进行执行,大家看执行的结果,得到一个 grouped 的分组,这 group 的分组是 pandas 的 groupby 对象,它是一个叫group by的 object,在得到这个分组以后,可以在分组方面做应用,应用一些会统计函数。所以分组、应用、合并这三个过程,还是要强化在脑子里面,下面看看在它上面使用应用函数。

这个分组带来很多汇总函数用平均值,可以在分组对象.后面按 tab键,然后这里面就有很多分组汇总函数,而且基本都是英文单词。

如果想要用的时候可以看帮助,帮助怎么看,操作方法就是在列的名字后面加问号,那比如 mean 的帮助怎么看,在上面可以加单元格,注意加单元格把光标放在这这一行上面,点击字母 a,那么在上面会加一个空的单元格,如果按 b 会在下面加空的单元格。那么 group mean 复制粘贴到上面的空单元格并且在后面加问号,注意问号一定是英文状态下的,然后练习一下,下面就提供了其帮助以及示例,那么这就是说在学 Python 的应用过程当中,没有必要像学英语一样去记住那么多的东西,只要知道逻辑、线索,然后会查帮助,那这是给大家讲的方法。

那么下面再看这是在分组上面求汇总(平均值),当然其 key1还在这里,然后 a 标签就是它的平均值,这就是给大家看的结果。

然后 group key 这个分组的键,按照 key1键对数据series进行了聚合,这也导致其产生了一个新的 series,就此运行的结果看下面的显示,它本身也是一个 series,而且这个 series 的索引就是 key1列中的不同值。

也可以用下面方法,得到的结果中,index 索引也有key1,因为使用了df【‘key1’】作为它groupby上面的 key,那么可以传入多个数组做 list,然后再看下例子。

还是要在 data1的 series 数据框里面选第一列,然后做分组。但是分组传的是一个列表,里面有两个字段 key,然后求其平均值。最后看结果,结果是一个层次索引、分层索引了,有 key1和 key2,然后再是其平均值,前面学过的层次缩影,或者叫多层索引、分层缩影,就很容易理解了。

那么第0级的 key 是 key1,第1级的 key 是 key2,它会产生不同的键。对于这种层次索引,分层索引,可以把它展开,展开以后就是第0级,第0级索引还是保留在它那里,第1级索引变成列上去,最后来看结果。

目录
打赏
0
0
0
0
261
分享
相关文章
Pandas数据应用:客户流失预测
本文介绍如何使用Pandas进行客户流失预测,涵盖数据加载、预处理、特征工程和模型训练。通过解决常见问题(如文件路径错误、编码问题、列名不一致等),确保数据分析顺利进行。特征工程中创建新特征并转换数据类型,为模型训练做准备。最后,划分训练集与测试集,选择合适的机器学习算法构建模型,并讨论数据不平衡等问题的解决方案。掌握这些技巧有助于有效应对实际工作中的复杂情况。
124 95
Pandas数据应用:库存管理
本文介绍Pandas在库存管理中的应用,涵盖数据读取、清洗、查询及常见报错的解决方法。通过具体代码示例,讲解如何处理多样数据来源、格式不一致、缺失值和重复数据等问题,并解决KeyError、ValueError等常见错误,帮助提高库存管理效率和准确性。
92 72
Pandas数据应用:市场篮子分析
市场篮子分析是一种用于发现商品间关联关系的数据挖掘技术,广泛应用于零售业。Pandas作为强大的数据分析库,在此领域具有显著优势。本文介绍了市场篮子分析的基础概念,如事务、项集、支持度、置信度和提升度,并探讨了数据预处理、算法选择、参数设置及结果解释中的常见问题与解决方案,帮助用户更好地进行市场篮子分析,为企业决策提供支持。
53 29
Pandas数据应用:供应链优化
在当今全球化的商业环境中,供应链管理日益复杂。Pandas作为Python的强大数据分析库,能有效处理库存、物流和生产计划中的大量数据。本文介绍如何用Pandas优化供应链,涵盖数据导入、清洗、类型转换、分析与可视化,并探讨常见问题及解决方案,帮助读者在供应链项目中更加得心应手。
33 21
Pandas数据应用:广告效果评估
在数字化营销中,广告效果评估至关重要。Pandas作为Python的强大数据分析库,在处理广告数据时表现出色。本文介绍如何使用Pandas进行广告效果评估,涵盖数据读取、预览、缺失值处理、数据类型转换及常见报错解决方法,并通过代码案例详细解释。掌握这些技能,可为深入分析广告效果打下坚实基础。
34 17
Pandas数据应用:用户细分
用户细分是数据分析和商业智能中的关键步骤,通过将用户群体划分为不同子集,企业可以更精准地了解用户需求并制定营销策略。Pandas 是 Python 中常用的数据处理库,支持高效的数据操作。使用 Pandas 进行用户细分包括数据准备、清洗、特征工程、细分和结果分析等步骤。常见问题如数据类型不一致、内存不足等可通过相应方法解决。Pandas 简化了用户细分流程,帮助获取有价值的洞察。
51 24
Pandas数据应用:销售预测
本文介绍如何使用Pandas进行销售预测。首先,通过获取、清洗和可视化历史销售数据,确保数据质量并理解其特征。接着,进行特征工程,构建线性回归等模型进行预测,并评估模型性能。最后,针对常见问题如数据类型不匹配、时间格式错误、内存不足和模型过拟合提供解决方案。掌握这些步骤,可有效提升销售预测的准确性,助力企业优化库存管理和提高客户满意度。
34 17
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
106 0
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
131 1
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
69 2
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等