Heim >Backend-Entwicklung >Python-Tutorial >Wie kann Pandas GroupBy die Gesamtzahl der Früchte pro Name berechnen?

Wie kann Pandas GroupBy die Gesamtzahl der Früchte pro Name berechnen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-23 06:02:19151Durchsuche

How Can Pandas GroupBy Calculate Total Fruits per Name?

Pandas Group-By: Bestimmung der Fruchtsummen nach Namen

In Datenmanipulationsszenarien besteht häufig die Notwendigkeit, Daten anhand bestimmter Kriterien zu aggregieren . Die Groupby-Methode von Pandas bietet eine leistungsstarke Lösung zum Gruppieren von Daten und zum Durchführen verschiedener Aggregationen. In diesem Artikel wird gezeigt, wie Sie mithilfe von Groupby die Summe der Früchte für jeden Namen in einem bestimmten Datensatz berechnen.

Problemstellung:

Gegeben sei ein Datenrahmen mit Spalten, die Früchte darstellen , Datum, Name und Nummer:

import pandas as pd

df = pd.DataFrame({
    'Fruit': ['Apples', 'Apples', 'Apples', 'Apples', 'Apples', 'Oranges', 'Oranges', 'Oranges', 'Oranges', 'Oranges', 'Grapes', 'Grapes', 'Grapes', 'Grapes', 'Grapes'],
    'Date': ['10/6/2016', '10/6/2016', '10/6/2016', '10/7/2016', '10/7/2016', '10/7/2016', '10/6/2016', '10/6/2016', '10/6/2016', '10/7/2016', '10/7/2016', '10/7/2016', '10/7/2016', '10/7/2016', '10/7/2016'],
    'Name': ['Bob', 'Bob', 'Mike', 'Steve', 'Bob', 'Bob', 'Tom', 'Mike', 'Bob', 'Tony', 'Bob', 'Tom', 'Bob', 'Bob', 'Tony'],
    'Number': [7, 8, 9, 10, 1, 2, 15, 57, 65, 1, 1, 87, 22, 12, 15]
})

Lösung:

An Um die Summe der Früchte für jeden Namen zu berechnen, befolgen Sie diese Schritte:

result_df = df.groupby(['Fruit', 'Name'])['Number'].sum()

Dieser Vorgang gruppiert die Daten sowohl nach den Spalten „Frucht“ als auch „Name“ und aggregiert die Spalte „Anzahl“ durch Berechnen der Summe. Die Ausgabe ist ein Datenrahmen, der die Gesamtzahl der Früchte für jede Kombination aus „Frucht“ und „Name“ enthält.

Ergebnis:

Der resultierende Datenrahmen ähnelt dem Folgendes:

               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

Wenn eine bestimmte Spalte für die Aggregation angegeben werden muss, kann die folgende Syntax verwendet werden verwendet:

result_df = df.groupby(['Name', 'Fruit'])['Number'].sum()

Durch die Verwendung der Groupby- und Sum-Funktionen von Pandas können wir Daten effektiv gruppieren und aggregieren, um aus großen Datensätzen aussagekräftige Erkenntnisse zu gewinnen, was es zu einem leistungsstarken Werkzeug für die Datenexploration und -analyse macht.

Das obige ist der detaillierte Inhalt vonWie kann Pandas GroupBy die Gesamtzahl der Früchte pro Name berechnen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn