首頁 >後端開發 >Python教學 >如何使用 Pandas GroupBy.agg() 將多個聚合函數套用到同一列?

如何使用 Pandas GroupBy.agg() 將多個聚合函數套用到同一列?

Patricia Arquette
Patricia Arquette原創
2025-01-01 00:22:09312瀏覽

How Can I Apply Multiple Aggregation Functions to the Same Column Using Pandas GroupBy.agg()?

使用pandas 集團。 >如何將多個聚合函數(f1、f2)應用於同一列(“returns”) 在pandas DataFrame 中使用 GroupBy.agg() 而不多次呼叫 agg() ?

直覺:

如果有句法例如:

解:

解:
df.groupby("dummy").agg({"returns": [f1, f2]})

截至2022 年6 月20日,以下語法是可接受的做法:

此語法使用元組來指定(列,函數)對

df.groupby('dummy').agg(
    Mean=('returns', np.mean),
    Sum=('returns', np.sum),
)

歷史解決方案:

在pandas在的早期版本中,您可以使用以下解決方案之一:

    列表函數:
  • df.groupby("dummy").agg({"returns": [np.mean, np.sum]})
  • 有函數清單的字典:
  • df.groupby('dummy').agg({'returns':
                                 {'Mean': np.mean, 'Sum': np.sum}})

這些早期的解決方案是仍然有效,但使用元組的第一個選項現在被認為是最佳實踐。

以上是如何使用 Pandas GroupBy.agg() 將多個聚合函數套用到同一列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn