首頁 > 後端開發 > Python教學 > Pandas 的「groupby()」函數如何計算組內值的總和?

Pandas 的「groupby()」函數如何計算組內值的總和?

Linda Hamilton
發布: 2024-12-22 04:10:09
原創
305 人瀏覽過

How Can Pandas' `groupby()` Function Calculate the Sum of Values Within Groups?

理解Pandas 中的GroupBy 聚合計算

在處理大型資料集時,pandas 提供了一個名為groupby() 的強大函數來對資料進行分組特定列並對分組資料執行計算。在這種情況下,讓我們探討如何利用 groupby() 來計算群組內值的總和。

考慮以下資料框,其中我們有有關個人在多個日期購買水果的詳細資訊:

| Fruit | Date      | Name  | Number |
|---|---|---|---|
| Apples  | 10/6/2016 | Bob    | 7 |
| Apples  | 10/6/2016 | Bob    | 8 |
| Apples  | 10/6/2016 | Mike   | 9 |
| Apples  | 10/7/2016 | Steve | 10 |
| Apples  | 10/7/2016 | Bob    | 1 |
| Oranges | 10/7/2016 | Bob    | 2 |
| Oranges | 10/6/2016 | Tom   | 15 |
| Oranges | 10/6/2016 | Mike  | 57 |
| Oranges | 10/6/2016 | Bob   | 65 |
| Oranges | 10/7/2016 | Tony   | 1 |
| Grapes  | 10/7/2016 | Bob    | 1 |
| Grapes  | 10/7/2016 | Tom   | 87 |
| Grapes  | 10/7/2016 | Bob   | 22 |
| Grapes  | 10/7/2016 | Bob   | 12 |
| Grapes  | 10/7/2016 | Tony  | 15 |
登入後複製

目標:計算按名稱分組的水果購買總和

我們的目標是計算每個人購買的水果總數,按水果(Fruit)和人名(Name)將資料分組。

解決方案:使用GroupBy.sum()

為了實現這一點,我們使用groupby() 函數對列進行分組:

result = df.groupby(['Fruit', 'Name']).sum()
登入後複製

應用於分組資料的sum() 方法會自動聚合指定列中的值(在本例中,Number 表示購買的水果數量)。

輸出:

程式碼的輸出為我們提供了聚合值:

|               | Number |
|----------------|--------|
| Fruit   | Name         |
| Apples  | Bob        | 16 |
|         | Mike        | 9 |
|         | Steve      | 10 |
| Grapes  | Bob        | 35 |
|         | Tom        | 87 |
|         | Tony       | 15 |
| Oranges | Bob        | 67 |
|         | Mike       | 57 |
|         | Tom        | 15 |
|         | Tony       | 1 |
登入後複製

在這裡,我們可以觀察每個人購買的水果總數在每個水果類別。例如,在「鮑伯」組中,購買的「蘋果」總數為 16 個,購買的「葡萄」總數為 35 個。

以上是Pandas 的「groupby()」函數如何計算組內值的總和?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板