bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

Python自定義聚合函數merge與transform有什么區別-創新互聯

小編這次要給大家分享的是Python自定義聚合函數merge與transform有什么區別,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

創新互聯公司專注于西湖網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供西湖營銷型網站建設,西湖網站制作、西湖網頁設計、西湖網站官網定制、微信小程序服務,打造西湖網絡公司原創品牌,更為您提供西湖網站排名全網營銷落地服務。

1.自定義聚合函數,結合agg使用

2. 同時使用多個聚合函數

3. 指定某一列使用某些聚合函數

4.merge與transform使用

import pandas as pd
  import numpy as np
  np.random.seed(1)
  dict_data = {
    'k1': ['a', 'b', 'c', 'd', 'a', 'b', 'c', 'd'],
    'k2': ['A', 'B', 'C', 'D', 'A', 'B', 'C', 'D'],
    'data1': np.random.randint(1,10,8),
    'data2': np.random.randint(1,10,8)
  }
  df = pd.DataFrame(dict_data)
  print('df=\n',df)
  df2 = df.groupby('k1').sum()
  # df2 = df.sum()
  print("df.groupby('k1').sum()\n",df2)

  # 使用聚合函數
  def cus(df):
    return df.max()-df.min()
  # 默認列索引為列名。元組第0個元素‘Max',‘mu_cus'為自定義列名稱,第一個元素為聚合函數名稱
  print("使用聚合函數1\n",df.groupby('k1').agg(['sum',('Max','max'),('mu_cus',cus)]))
  # 制定某一列使用某個聚合函數, 元組不能用來重命名列名了,元組里面的函數,表示這一列將會執行的聚合函數
  print("使用聚合函數2\n",df.groupby('k1').agg({'data1':('min', 'max'),'data2':'min'}))

  df3 = df.groupby('k1').sum().add_prefix('sum_')
  print('df3=\n',df3)
  # 如果不使用add_prefix('sum_'),那么在merge時候data1余data2列名相同,會被自動重命名
  print('merge=\n',pd.merge(df,df3,on='k1')) 

  transform_df = df.groupby('k1').transform(np.sum).add_prefix('sum_')
  print(transform_df)
  df[transform_df.columns]=transform_df # transform_df.columns Index(['sum_k2', 'sum_data1', 'sum_data2'], dtype='object')
  # df[transform_df.columns.values]=transform_df #等價,# transform_df.columns.values ['sum_k2', 'sum_data1', 'sum_data2']
   print(df)    exit()

另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享標題:Python自定義聚合函數merge與transform有什么區別-創新互聯
當前路徑:http://vcdvsql.cn/article28/dsopjp.html

成都網站建設公司_創新互聯,為您提供面包屑導航關鍵詞優化定制開發定制網站自適應網站服務器托管

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站托管運營