ホームページ >バックエンド開発 >Python チュートリアル >Pandas の「groupby()」関数はグループ内の値の合計をどのように計算できますか?
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() 関数を使用します。 grouping:
グループ化されたデータに適用される sum() メソッドは、指定された列の値を自動的に集計します (この場合、Number は購入した果物の数を表します)。result = df.groupby(['Fruit', 'Name']).sum()出力:
コードの出力は、集計された結果を提供します。値:
ここでは、各果物カテゴリ内で各個人が購入した果物の合計数を観察できます。たとえば、「ボブ」グループでは、購入した「リンゴ」の合計数は 16 個、購入した「ブドウ」の合計数は 35 個です。| | 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 |
以上がPandas の「groupby()」関数はグループ内の値の合計をどのように計算できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。