python groupby 函数 as_index详解
在官方网站中对as_index有以下介绍:
as_index:boolean,defaultTrue
Foraggregatedoutput,returnobjectwithgrouplabelsastheindex.OnlyrelevantforDataFrameinput.as_index=Falseiseffectively“SQL-style”groupedoutput
翻译过来就是说as_index的默认值为True,对于聚合输出,返回以组标签作为索引的对象。仅与DataFrame输入相关。as_index=False实际上是“SQL风格”的分组输出。举例如下
importpandasaspd df=pd.DataFrame(data={'books':['bk1','bk1','bk1','bk2','bk2','bk3'],'price':[12,12,12,15,15,17]}) printdf print printdf.groupby('books',as_index=True).sum() print printdf.groupby('books',as_index=False).sum()
输出如下:
booksprice 0bk112 1bk112 2bk112 3bk215 4bk215 5bk317 price books bk136 bk230 bk317 booksprice 0bk136 1bk230 2bk317
代码中注释的两段代码报错,分析可以看到:
当as_index=True时,没有显示索引项,而是以第一列组标签为索引值,故不能通过df.loc[0]取值,可以通过df.loc[‘bk1']取值;
当as_index=False时,显示索引项,此时可以通过df.loc[0]取得值。因此as_index的作用是控制聚合输出是否以组标签为索引值。
以上这篇pythongroupby函数as_index详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。