首頁技術文章正文

Python數(shù)據(jù)聚合與分組運算:通過groupby()方法將數(shù)據(jù)拆分成組

更新時間:2022-11-01 來源:黑馬程序員 瀏覽量:

IT培訓班

  分組聚合的第一個步驟是將數(shù)據(jù)拆分成組。在Pandas中,可以通過groupby()方法將數(shù)據(jù)集按照某些標準劃分成若干個組,該方法的語法格式如下:

groupby(by=None, axis=0, level=None, as_index=True, sort=True,
        group_keys=True, squeeze=False, observed=False, **kwargs)

  部分參數(shù)表示的含義如下:

  (1)by:用于確定進行分組的依據(jù)。

  (2)axis:表示分組軸的方向,可以為0(表示按行)或1(表示按例),默認為0。

  (3)level:如果某個軸是一個MultiIndex對象(索引層次結(jié)構(gòu)),則會按特定級別或多個級別分組。

  (4)as_index:表示聚合后的數(shù)據(jù)是否以組為標簽作為索引的DataFrame對象輸出,接收布爾值,默認為True。

  (5)sort:表示是否對分組標簽進行排序,接收布爾值,默認為True。

  通過groupby()方法執(zhí)行分組操作,會返回一個GroupBy對象,該對象實際上并沒有進行任何計算,只是包含一些關于分組鍵(比如df_obj[ 'key1'])的中間數(shù)據(jù)而已。一般,使用Series調(diào)用groupby()方法返回的是SeriesGroupBy對象,而使用DataFrame調(diào)用groupby()方法返回的是DataFrameBy對象。

  在進行分組時,可以通過groupby()方法的by參數(shù)來指定按什么標準分組,by參數(shù)可以接收的數(shù)據(jù)有多種形式,類型也不必相同,常用的分組方式主要有以下4種:

  ◆列表或數(shù)組,其長度必須與待分組的軸一樣。

  ◆DtaFrame對象中某列的名稱。

  ◆字典或Series對象,給出待分組軸上的值與分組名稱之間的對應關系。

  ◆函數(shù),用于處理軸索引或索引中的各個標簽。

分享到:
在線咨詢 我要報名
和我們在線交談!