Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Daten in Pandas gruppieren und summieren, um die Gesamteinkäufe nach Kunde und Fruchtart zu berechnen?

Wie kann ich Daten in Pandas gruppieren und summieren, um die Gesamteinkäufe nach Kunde und Fruchtart zu berechnen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-25 14:55:15341Durchsuche

How Can I Group and Sum Data in Pandas to Calculate Total Purchases by Customer and Fruit Type?

Gruppieren und Summieren von Daten in Pandas

Bei der Datenanalyse ist es oft notwendig, Daten nach bestimmten Kriterien zu aggregieren, um aussagekräftige Erkenntnisse abzuleiten. Pandas, eine leistungsstarke Python-Bibliothek zur Datenbearbeitung, bietet die Methode groupby() zum Gruppieren von Daten basierend auf einer oder mehreren Spalten. Diese Methode kann mit Aggregationsfunktionen wie sum() kombiniert werden, um Aggregatwerte für jede Gruppe zu berechnen.

Berechnung der Summe der Werte nach Gruppe

Angenommen, wir über einen DataFrame verfügen, der Informationen über den Obstkonsum von Einzelpersonen enthält. Jede Zeile stellt einen Obstkauf dar, einschließlich Fruchtsorte, Kaufdatum, Kundenname und Anzahl der gekauften Früchte.

Zur Berechnung der Gesamtzahl der von jeder Person gekauften Früchte, gruppiert nach Obstsorte und Kundenname können wir die folgenden Schritte verwenden:

Schritt 1: Gruppieren Sie die Daten

Zuerst gruppieren wir den DataFrame sowohl nach „Frucht“ und „Name“-Spalten mithilfe der Methode „groupby()“:

df_grouped = df.groupby(['Fruit', 'Name'])

Dadurch wird ein SeriesGroupBy-Objekt erstellt, das die gruppierten Daten darstellt.

Schritt 2: Wenden Sie die Summenfunktion an

Um die Gesamtzahl der von jeder Gruppe gekauften Früchte zu berechnen, wenden wir die Funktion sum() auf die Gruppe an Serie:

df_grouped_sum = df_grouped['Number'].sum()

Die resultierende Serie, df_grouped_sum, enthält die Summe der Obstkäufe für jede eindeutige Kombination aus Obstart und Kundenname.

Beispiel

Betrachten Sie den folgenden DataFrame:

   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

Anwenden der Vorgänge „groupby()“ und „sum()“ auf Mit diesem DataFrame erhalten wir das folgende Ergebnis:

                 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

Diese Ausgabe zeigt die Gesamtzahl der von jedem Einzelnen gekauften Früchte, aufgeschlüsselt nach Fruchttyp.

Das obige ist der detaillierte Inhalt vonWie kann ich Daten in Pandas gruppieren und summieren, um die Gesamteinkäufe nach Kunde und Fruchtart zu 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