對于這個資料集,我想為 Year、Length Group 和 Port of Landing 的三列的每個組合找到 Value(£) 的總和。例如,一個總和值為 2016 年,長度組 10m&Under 和 Port of Landing Aberdaran。

uj5u.com熱心網友回復:
鑒于您對@berkayln 的回復,我認為您想將該列投影回您的原始資料框......這符合您的需要嗎?
df['sumPerYearLengthGroupPortOfLanding']=df.groupby(['Year','Length Group','Port of Landing'])['Value(£)'].transform(lambda x: x.sum())
uj5u.com熱心網友回復:
你可以試試這個:
dataframe.groupby(['Year','Length Group','Port of Landing'])['Value(£)'].sum()
那應該行得通。
uj5u.com熱心網友回復:
您可以使用pd.DataFrame.groupby來聚合資料。
# Change the order if you want a different hierarchy
grp_cols = ["Year", "Length Group", "Port of Landing"]
df.groupby(grp_cols)["Value(£)"].sum()
您也可以像這樣一一進行:
for col in grp_cols:
df.groupby(col)["Value(£)"].sum()
您也可以使用.loc僅獲取 2016。
df.loc[df.Year == 2016]["Value(£)"].sum()
該pd.DataFrame.groupby功能允許您使用除 之外的其他函式進行聚合.sum,包括對子資料幀進行操作的自定義函式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/466677.html
上一篇:將資料框列名和行值組合為單個字串
