介绍pandas数据聚合和重组的相关知识,仅供参考。
简介:根据一个或多个键进行分组,每一组应用函数,再进行合并
(资料图片仅供参考)
分组的键有多种形式:
列表或数组,长度与待分组的轴一样表示DataFrame某个列名的值字典或Series,给出待分组轴上的值与分组名之间的对应关系函数,用于处理轴索引或索引中的各个标签实例:
import numpy as np import pandas as pd import matplotlib.pyplot as plt from pandas import Series,DataFrame df =DataFrame({"key1":list("aabba"),"key2":["one","two","one","two","one"],\ "data1":np.random.randn(5),"data2":np.random.randn(5)}) #根据key1进行分组,并计算data1的均值。 #注意下面的方式,取出来进行分组,而不是在DataFrame中分组,这种方式很灵活 #可以看到这是一个GroupBy对象,具备了应用函数的基础 #这个过程是将Series进行聚合,产生了新的Series grouped = df["data1"].groupby(df["key1"]) print(grouped,"\n")
注:
取出来进行分组,而不是在DataFrame中分组分组键中的缺失值被排除在外 1.2对分组进行迭代
GroupBy对象支持迭代,可以产生一组二元元组(由分组名和数据块组成)
groupby默认在axis=0上进行分组,但可以设置在任何轴上分组
对于由DataFrame产生的GroupBy对象,如果用一个或一组列名进行索引,可实现选取部分列进行聚合的目的,即下面语法效果相同。
假设已经知道列的分组方式,现在需要利用这个信息进行分组统计。
下面为groupby传入一个已知信息的字典:
相当于将每一个列重设名,再按新的名字进行求和。
Series也有这样的功能,被看作一个固定大小的映射,可以用Series作为分组键,pandas会自动检查对齐。
将函数、数组、字典、Series混用也ok,因为最终都会转换为数组
简介:
这里的数据聚合是说任何能够从数组产生标量值的过程常见的聚合运算都有就地计算数据集统计信息的优化实现。当然不止这些,可以用自己定义的运算,还可以调用分组对象上已经定义好的任何方法。
例:quantile可计算Series或DataFrame列的样本分位数。
对于自己定义的聚合函数,只需将其传入aggregate或agg即可:
有些方法(describe)也可应用
自定义函数比经过优化的函数要慢得多,这是因为在构造中间分组数据块时存在非常大的开销(函数调用、数据重排等)
可使用的函数:
有时候需要对不同的列应用不同的函数 ,或者对一列应用不同的函数
若传入一组函数或函数名,得到的DataFrame列就会以相应的函数命名
上面有个问题就是列名是自动给出的,以函数名为列名,若传入元组(name,function)组成的列表,就会自动将第一个元素作为列名
对两列都应用functions:
得到的结果的列名是层次化索引,可以直接用外层索引选取数据:
如果想对不同的列应用不同的函数,具体的办法是向agg传入一个从列映射到函数的字典:
到目前为止,示例中的聚合数据都是由唯一的分组键组成的索引(可能还是层次化的)
由于并不是总需要如此,可以向groupby传入as_index = False禁用该功能
到此这篇关于pandas数据聚合和重组的文章就介绍到这了,更多相关pandas数据聚合内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
上一篇:华为已完成替代 全球最大ERP企业SAP未受影响:利润坚挺
下一篇:最后一页
天眼查App显示,近日,由黄其淋(林墨)个人独资的上海骐墨文化传媒工作室成立,注册资本10万人民币,经营
保释即取保候审,批捕之后可以申请取保候审。取保候审的条件与执行如下,人民法院、人民检察院和公安机关对
北京时间4月20日21时33分左右,SpaceX的重型运载火箭“星舰”在位于休斯顿的星舰基地执行首次轨道级测试飞
iHerb自2010年正式将中国纳入服务版图后,受到了无数国内海淘党的喜爱。作为一个成立将近27周年的保健品电
X 关闭
深入解析pandas数据聚合和重组
华为已完成替代 全球最大ERP企业SAP未受影响:利润坚挺
世界观焦点:长江新农|做了“鱼王”“虾王”回乡逐浪农业潮头,他将汉产预制菜卖到川渝等地
鹤岗市人力资源和社会保障局电话号_鹤岗市人力资源和社会保障局-当前信息
豫光金铅:公司存货主要为生产过程中的中间占用及原材料库存 全球时快讯
X 关闭
上海嘉定体育馆隔离救治点首批新冠病毒感染者顺利“出院”
千里支援显真情 安徽六安捐赠的100余吨新鲜蔬菜抵沪
缉毒英雄蔡晓东烈士安葬仪式在云南西双版纳举行
多方合作推动青海建设国际生态文明高地
海口新增1例确诊病例和2例无症状感染者