婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Pandas groupby apply agg 的區別 運行自定義函數說明

Pandas groupby apply agg 的區別 運行自定義函數說明

熱門標簽:在哪里辦理400電話號碼 江蘇客服外呼系統廠家 西藏智能外呼系統五星服務 原裝電話機器人 工廠智能電話機器人 平頂山外呼系統免費 千陽自動外呼系統 清遠360地圖標注方法 400電話申請服務商選什么

agg 方法將一個函數使用在一個數列上,然后返回一個標量的值。也就是說agg每次傳入的是一列數據,對其聚合后返回標量。

對一列使用三個函數:

對不同列使用不同函數

apply 是一個更一般化的方法:將一個數據分拆-應用-匯總。而apply會將當前分組后的數據一起傳入,可以返回多維數據。

實例:

1、數據如下:

lawsuit2[['EID','LAWAMOUNT','LAWDATE']]

2、groupby后應用apply傳入函數數據如下:

lawsuit2[['EID','LAWAMOUNT','LAWDATE']].groupby(['EID']).apply(lambda df:print(df))

3、如果使用agg,對于兩列可以處理,但對于上面的三列,打印數據如下:

lawsuit2[['EID','LAWAMOUNT','LAWDATE']].groupby(['EID']).agg(lambda df:print(df))

可以看到agg傳入的只有一列數據,如果我們使用df加列下表強行取值也能取到,但是有時會出現各種keyError問題。

4、完整代碼:

判斷最近一次日期的花費是否是所有的花費中最大花費。

def handle(df):
#   print(df)
# 找最大日期
  maxdate = df['LAWDATE'].max()
# 找最大費用
  left = df[ df['LAWDATE']==maxdate ]['LAWAMOUNT'].max()
# 取ID
  EID = df['EID'].values[0]
#   print(EID)
# 從已存在的表中根據EID找到最大費用
  right = LAW_AMOUNT_MAX.loc[EID,'LAW_AMOUNT_MAX']
# 判斷費用是否相等
  if left==right:
    return 1
  else:
    return 0
    
LAW_AMOUNT_MAX_IS_LAST = lawsuit2[['EID','LAWAMOUNT','LAWDATE']].groupby(['EID']).apply(handle)

其他注意點:

在groupby后使用apply,如果直接返回,會出現有多余的groupby索引問題,可以使用group_keys解決:

orgin = reviews_df.sort_values(["reviewerID","unixReviewTime"]).groupby("reviewerID",group_keys=False)
train = orgin.apply(lambda df: df[:-2])
train.head()

補充:pandas分組聚合運算groupby之agg,apply,transform

groupby函數是pandas中用以分組的函數,可以通過指定列來進行分組,并返回一個GroupBy對象。對于GroupBy對象的聚合運算,其有經過優化的較為常用的sum,mean等函數,但是如果我們需要用自定義的函數進行聚合運算,那么就需要通過agg,apply,transform來實現。

agg,apply和transform三者之間的區別在于:1、agg和transform之間的區別為:前者經過聚合后,只會在該組單列中返回一個標量值,而transform則會將該標量值在該組單列內進行廣播,保持原DataFrame的索引不變;2、agg和transform中的函數參數是以分組后的單列(Series)為操作對象的,即傳入agg和transform的函數的參數是列,而apply中的函數參數是分組后整個的DataFrame。下面分別對這兩點進行說明。

一、agg和transform

如下代碼所示,構造一個df,agg和transform中lambda函數的input都為單列,但是agg返回的索引是分組的key的唯一值,而transform返回的索引和原df一樣,但是相比于agg返回的結果,發現transform只是在d行處的值進行了重復的廣播,這個目的就是維持原df的索引不變,且被拿來分組的列會被剔除。

df
Out[1]:
 index a b c
0   d 0 1 2
1   d 3 4 5
2   e 6 7 8
 
df.groupby(by='index').agg(lambda x:x.shape)
Out[2]: 
     a   b   c
index         
d   (2,) (2,) (2,)
e   (1,) (1,) (1,)
 
df.groupby(by='index').transform(lambda x:x.shape)
Out[3]: 
   a   b   c
0 (2,) (2,) (2,)
1 (2,) (2,) (2,)
2 (1,) (1,) (1,) 

二、agg和apply

下面的是apply的結果,相比于上面agg的結果,可以發現,實際上lambda函數的input不再是一個Series,而是分組后的整個DataFrame。

dd.groupby(by='index').apply(lambda x:x.shape)
Out[4]: 
index
d  (2, 4)
e  (1, 4)

三、其他注意點

對于agg函數,其不僅可以傳入一個函數對每列執行相同的操作,還可以傳入一個字典{'col_name':func},來對不同的列做不同的操作,也可以將func替換為由多個不同的函數組成的list,實現對同一列做多個不同的操作,這是agg函數最為靈活的地方。

這三個函數,參數形式都為(func, *args,**kwargs),所以可以通過位置參數和關鍵字參數給func傳遞額外的參數。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • pandas DataFrame實現幾列數據合并成為新的一列方法
  • pandas分組排序 如何獲取第二大的數據
  • 使用pandas忽略行列索引,縱向拼接多個dataframe
  • pandas group分組與agg聚合的實例
  • pandas groupby分組對象的組內排序解決方案
  • pandas組內排序,并在每個分組內按序打上序號的操作
  • pandas 實現將兩列中的較大值組成新的一列

標簽:白城 西安 股票 日照 錦州 安慶 天水 隨州

巨人網絡通訊聲明:本文標題《Pandas groupby apply agg 的區別 運行自定義函數說明》,本文關鍵詞  Pandas,groupby,apply,agg,的,區別,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Pandas groupby apply agg 的區別 運行自定義函數說明》相關的同類信息!
  • 本頁收集關于Pandas groupby apply agg 的區別 運行自定義函數說明的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久人人爽人人爽| 成人一区二区三区中文字幕| 欧美亚洲一区三区| 高清不卡在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲美女淫视频| 2021国产精品久久精品| 欧美人xxxx| 欧美日韩一区二区三区免费看| 99精品久久久久久| 成人午夜短视频| 国产成人免费网站| 国产裸体歌舞团一区二区| 激情偷乱视频一区二区三区| 亚洲最新视频在线播放| 亚洲天堂av一区| 亚洲免费资源在线播放| 国产精品不卡一区| 最新成人av在线| 亚洲免费观看高清| 综合电影一区二区三区 | 色哟哟欧美精品| 99精品国产视频| 99久久精品国产观看| www.性欧美| 在线免费观看一区| 51久久夜色精品国产麻豆| 欧美丰满嫩嫩电影| 欧美一区二区三区人| 欧美一区二区不卡视频| 99精品视频在线播放观看| 欧美精品一二三四| 成人欧美一区二区三区视频网页| 国产精品久久二区二区| 亚洲成人在线网站| 日本视频一区二区三区| 国内成人精品2018免费看| 色8久久人人97超碰香蕉987| 欧美日韩中字一区| 国产精品福利影院| 亚洲黄网站在线观看| 欧美大片日本大片免费观看| 精品国产乱码久久久久久图片| 欧美精品一区二区三| 国产欧美va欧美不卡在线| 亚洲精品日产精品乱码不卡| 视频一区在线播放| 国产成人精品一区二| 91美女片黄在线观看91美女| 欧美日本国产视频| 久久久久久久久岛国免费| 亚洲人精品午夜| 另类综合日韩欧美亚洲| 91视频观看免费| 中文字幕乱码日本亚洲一区二区| 中文字幕av资源一区| 亚洲国产日韩精品| 国产一区二区三区高清播放| 色噜噜偷拍精品综合在线| 7878成人国产在线观看| 欧美韩国日本不卡| 丝袜美腿成人在线| 91在线免费播放| 久久久久久久久久久久久女国产乱| 一级做a爱片久久| 国产福利一区二区三区视频在线| 欧美性大战久久久久久久蜜臀 | 中文字幕精品三区| 亚洲va欧美va人人爽午夜| 国产一区999| 91精品国产丝袜白色高跟鞋| 亚洲欧美日韩国产综合| 国产一区二区福利| 日韩天堂在线观看| 一区二区三区产品免费精品久久75| 国产一区美女在线| 欧美视频一区二区三区在线观看| 亚洲视频在线一区观看| 日本sm残虐另类| 亚洲国产你懂的| 99国产麻豆精品| 欧美激情一二三区| 久久激五月天综合精品| 欧美日韩中文精品| 综合欧美一区二区三区| 成人免费毛片高清视频| 精品国产百合女同互慰| 男人操女人的视频在线观看欧美| 欧美午夜精品一区| 亚洲一区二区三区四区五区黄| 99精品国产99久久久久久白柏| 国产片一区二区三区| 国内外成人在线| 精品国产欧美一区二区| 日产精品久久久久久久性色| 欧美日韩国产综合久久| 亚洲成人免费看| 欧美久久高跟鞋激| 亚洲福利一区二区三区| 欧美唯美清纯偷拍| 日日夜夜免费精品| 欧美大片拔萝卜| 韩国三级电影一区二区| 久久综合久久综合久久综合| 久久99精品久久久久久国产越南| 日韩美女视频在线| 国内精品国产成人国产三级粉色 | 成人精品视频.| 国产精品免费视频网站| 99这里只有久久精品视频| 亚洲美女屁股眼交| 欧美久久久影院| 激情国产一区二区| 国产午夜精品久久| 91网站视频在线观看| 亚洲一区影音先锋| 欧美一区二区女人| 国产精品一二三四| 一区在线中文字幕| 欧美电影在哪看比较好| 国产高清久久久| 国产福利91精品| 国产很黄免费观看久久| 欧美成人r级一区二区三区| 欧美在线视频日韩| 日韩欧美国产综合| 2017欧美狠狠色| 中文字幕一区二区三区精华液| 不卡视频免费播放| 色综合久久久久久久久| 成人精品免费视频| 亚洲一区二区三区四区不卡| 欧美色精品在线视频| 狠狠色综合日日| 自拍偷拍欧美精品| 日韩一区二区三区免费观看| 国产盗摄视频一区二区三区| 夜夜揉揉日日人人青青一国产精品| 日韩一区二区三区四区五区六区| 国产精品69久久久久水密桃| 亚洲一区二区三区视频在线播放| 日韩精品在线网站| 91美女片黄在线观看91美女| 蜜臀av亚洲一区中文字幕| 一区免费观看视频| 久久久三级国产网站| 欧美日韩视频在线一区二区| 成人三级伦理片| 蜜桃精品在线观看| 亚洲国产精品久久人人爱| 欧美激情综合网| 精品卡一卡二卡三卡四在线| 欧美性三三影院| 99久久久无码国产精品| 国产精品1024| 日本成人在线视频网站| 亚洲激情综合网| 国产精品美女久久久久aⅴ | 国产精品久久毛片a| 在线电影院国产精品| 99re视频精品| av在线不卡网| 国产电影一区在线| 韩国av一区二区| 捆绑紧缚一区二区三区视频| 亚洲国产综合色| 一区二区三区久久| 亚洲女子a中天字幕| 中文字幕亚洲精品在线观看| 国产精品你懂的在线欣赏| 国产视频一区二区在线| www亚洲一区| 欧美成人免费网站| 欧美一区二区国产| 欧美精三区欧美精三区| 欧美精品18+| 欧美日韩一卡二卡三卡| 欧美中文字幕一区二区三区亚洲| 色婷婷综合久久久中文一区二区| 99国产麻豆精品| 93久久精品日日躁夜夜躁欧美| 成人精品鲁一区一区二区| 成人丝袜视频网| 一本久道中文字幕精品亚洲嫩| 色综合久久综合网97色综合| www.色精品| 色欧美片视频在线观看在线视频| 色婷婷综合中文久久一本| 欧美日韩视频在线一区二区| 制服视频三区第一页精品| 日韩欧美成人激情| 久久综合色综合88| 欧美国产综合一区二区| 亚洲女同女同女同女同女同69| 亚洲一二三级电影| 秋霞电影一区二区| 国产一区欧美日韩| 99精品视频一区二区三区| 欧美乱熟臀69xxxxxx| 久久久久久久电影|