Python技巧分享之groupby基礎用法詳解
模擬數(shù)據(jù)
import pandas as pd import numpy as np
employees = ["小明","小周","小孫","小王","小張"] # 5位員工 time = ["上半年", "下半年"] df=pd.DataFrame({ "employees":np.random.choice(employees,10), # 在員工中重復選擇10次 # 另一種寫法 #"employees":[employees[x] for x in np.random.randint(0,len(employees),10)], "time":np.random.choice(time,10), "salary":np.random.randint(800,1000,10), # 800-1000之間的薪資選擇10個數(shù)值 "score":np.random.randint(6,12,10) # 6-11的分數(shù)選擇10個 }) df
groupby+單個字段+單個聚合
求解每個人的總薪資金額:
total_salary = df.groupby("employees")["salary"].sum().reset_index() total_salary
使用agg也能夠?qū)崿F(xiàn)上面的效果:
df.groupby("employees").agg({"salary":"sum"}).reset_index()
df.groupby("employees").agg({"salary":np.sum}).reset_index()
groupby+單個字段+多個聚合
求解每個人的總薪資金額和薪資的平均數(shù):
方法1:使用groupby+merge
mean_salary = df.groupby("employees")["salary"].mean().reset_index() mean_salary
然后將上面的兩個結(jié)果進行組合;在合并之前為了字段的名字更加的直觀,我們重命名下:
total_salary.rename(columns={"employees":"total_salary"}) mean_salary.columns = ["employees","mean_salary"]
total_mean = total_salary.merge(mean_salary) total_mean
方法2:使用groupby+agg
total_mean = df.groupby("employees")\ .agg(total_salary=("salary", "sum"), mean_salary=("salary", "mean"))\ .reset_index() total_mean
groupby+多個字段+單個聚合
針對多個字段的同時聚合:
df.groupby(["employees","time"])["salary"].sum().reset_index()
# 使用agg來實現(xiàn) df.groupby(["employees","time"]).agg({"salary":"sum"}).reset_index()
groupby+多個字段+多個聚合
使用的方法是:
agg(’新列名‘=(’原列名‘, ’統(tǒng)計函數(shù)/方法‘))
df.groupby(["employees","time"])\ .agg(total_salary=("salary", "sum"), mean_salary=("salary", "mean"), total_score=("score", "sum") )\ .reset_index()
到此這篇關于Python技巧分享之groupby基礎用法詳解的文章就介紹到這了,更多相關Python groupby用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
pytorch實現(xiàn)mnist手寫彩色數(shù)字識別
這篇文章主要介紹了pytorch-實現(xiàn)mnist手寫彩色數(shù)字識別,文章圍繞主題展開詳細的內(nèi)容姐介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09pytest利用request?fixture實現(xiàn)個性化測試需求詳解
這篇文章主要為大家詳細介紹了pytest如何利用request?fixture實現(xiàn)個性化測試需求,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下2023-09-09Python實現(xiàn)圖形用戶界面和游戲開發(fā)的方法和技巧
GUI圖形用戶界面編程,我們可以通過python提供的豐富的組件,快速的實現(xiàn)使用圖形的界面和用戶交互, GUI編程類似于“搭積?”,將?個個組件(Widget)放到窗?中,這篇文章主要給大家介紹了基于Python的GUI圖形用戶界面編程的相關資料,需要的朋友可以參考下2023-05-05python構(gòu)造icmp echo請求和實現(xiàn)網(wǎng)絡探測器功能代碼分享
本文分享了二個python示例,python構(gòu)造icmp echo請求、實現(xiàn)網(wǎng)絡探測器功能代碼,類似nmap功能2014-01-01Python 異步協(xié)程函數(shù)原理及實例詳解
這篇文章主要介紹了Python 異步協(xié)程函數(shù)原理及實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-11-11