pandas groupby()的使用小結(jié)
在數(shù)據(jù)分析中,經(jīng)常會(huì)用到分組,可用函數(shù) pandas 中的groupby()。
groupby()主要的分組統(tǒng)計(jì)方向:
1、分組匯總
2、分組描述性統(tǒng)計(jì)分析
3、分組計(jì)算均值等統(tǒng)計(jì)量
4、分組去重
5、分組排序取樣本
6、分組匯總,然后再分組計(jì)算
Date Latitude Longitude Depth Type 01/02/1965 19.246 145.616 131.6 Earthquake 01/04/1965 1.863 127.352 80.0 Earthquake 01/05/1965 -20.579 -173.972 20.0 Earthquake 01/08/1965 -59.076 -23.557 15.0 Earthquake 01/09/1965 11.938 126.427 15.0 Earthquake
#1、分組統(tǒng)計(jì)組內(nèi)個(gè)數(shù) df.groupby(['date','Type']) .size() #2、分組統(tǒng)計(jì)計(jì)算‘Depth'的基本數(shù)據(jù)分布 df.groupby(['date','type'])['Depth'] .describe() #3、分組統(tǒng)計(jì)計(jì)算‘Latitude'的均值 df.groupby(['date','type']) .agg({'Latitude':'mean'}) #分組統(tǒng)計(jì)計(jì)算兩列數(shù)據(jù)的均值 df.groupby(['date','type']) .agg(la_mean = ('Latitude','mean'), lo_mean = ('Longitude','mean'), la_range = ('depth',lambda x:x.max() - x.min())) #4、分組然后對(duì)每組去重,然后匯總?cè)ブ睾蟮膫€(gè)數(shù) df.groupby('date') .apply(lambda x: x.drop_duplicates('Type')['Type'] .count()) #5、分組,然后按照‘Latitude'降序,并取出每組的前3個(gè)樣本。 df.groupby(['date']) .apply(lambda x: x.sort_values('Latitude',ascending = False) .head(3)) #6、分組,然后匯總計(jì)算兩列數(shù)據(jù),再進(jìn)行分組,取出每一組‘la_sum'的最大值 df.groupby(['date','type']) .agg(la_sum = ('Latitude','sum'), lo_sum = ('Longitude','sum')) .groupby(['date']) .apply(lambda x:x.sort_values('la_sum ',ascending = False).head(1)) #分組,然后按照type排序,再分組,取出前10匯總和后10匯總,然后再計(jì)算兩者的比率 df.groupby('date') .apply(lambda x:x.sort_values('type')) .reset_index(drop = True).groupby('date') .agg(tail10 = ('depth',lambda x:x.head(10).sum()), top10 = ('depth',lambda x:x.tail(10).sum())) .apply(lambda x:x['top10']/x['tail10'],axis = 1)
groupby()結(jié)合agg()和apply(),可以解決很多復(fù)雜的分組計(jì)算問(wèn)題。
到此這篇關(guān)于pandas groupby()的使用小結(jié)的文章就介紹到這了,更多相關(guān)pandas groupby()使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
虛擬機(jī)下載python是否需要聯(lián)網(wǎng)
在本篇文章里小編給大家分享的是一篇關(guān)于虛擬機(jī)下載python是否需要聯(lián)網(wǎng)的相關(guān)文章,有需要的朋友們可以參考下。2020-07-07在Pycharm中調(diào)試Django項(xiàng)目程序的操作方法
今天小編就為大家分享一篇在Pycharm中調(diào)試Django項(xiàng)目程序的操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07pytorch:torch.mm()和torch.matmul()的使用
今天小編就為大家分享一篇pytorch:torch.mm()和torch.matmul()的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12TensorFlow dataset.shuffle、batch、repeat的使用詳解
今天小編就為大家分享一篇TensorFlow dataset.shuffle、batch、repeat的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01關(guān)于Python3 lambda函數(shù)的深入淺出
今天小編就為大家分享一篇關(guān)于Python3 lambda函數(shù)的深入淺出,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11Pycharm最全報(bào)錯(cuò)的原因與解決方法總結(jié)(推薦!)
這篇文章主要給大家介紹了關(guān)于Pycharm最全報(bào)錯(cuò)的原因與解決方法的相關(guān)資料,文中記錄了Python各種報(bào)錯(cuò)解釋及處理方法,屬于個(gè)人記錄型,需要的朋友可以參考下2022-07-07python學(xué)習(xí)之面向?qū)ο蟆救腴T(mén)初級(jí)篇】
Python從第一天開(kāi)始就是面向?qū)ο蟮恼Z(yǔ)言。正因?yàn)槿绱耍瑒?chuàng)建和使用類和對(duì)象是非常地容易。這篇文章主要介紹了python中面向?qū)ο蟮南嚓P(guān)資料,屬于python面向?qū)ο髮W(xué)習(xí)的初級(jí)篇,本章將幫助您在使用Python面向?qū)ο缶幊痰募夹g(shù)方面所有提高,有需要的朋友可以參考借鑒。2017-01-01python selenium 執(zhí)行完畢關(guān)閉chromedriver進(jìn)程示例
今天小編就為大家分享一篇python selenium 執(zhí)行完畢關(guān)閉chromedriver進(jìn)程示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11