GroupBy und Aggregieren mehrerer Spalten in Pandas

Fariba Laiq 13 Juni 2022
GroupBy und Aggregieren mehrerer Spalten in Pandas

Die Pandas-Bibliothek ist eine leistungsstarke Datenanalysebibliothek in Python. Mit Pandas in Python können wir viele verschiedene Arten von Manipulationen an einem Datenrahmen durchführen.

groupby() ist eine Methode, die die Daten nach bestimmten Kriterien in mehrere Gruppen aufteilt. Danach können wir bestimmte Operationen an den gruppierten Daten durchführen.

Wenden Sie die Funktionen groupby() und aggregate() auf mehrere Spalten in Pandas Python an

Manchmal müssen wir die Daten aus mehreren Spalten gruppieren und einige aggregate()-Methoden anwenden. Die aggregate()-Methoden sind jene Methoden, die die Werte aus mehreren Zeilen kombinieren und einen einzelnen Wert zurückgeben, zum Beispiel count(), size(), mean(), sum(), mean() usw.

Im folgenden Code haben wir die Daten der Schüler, die für einige Spalten redundante Werte enthalten. Wenn Sie die Daten basierend auf Name und Section des Schülers gruppieren möchten, um seine Gesamtpunktzahl zu erhalten, gruppieren wir die Daten nach Name und Bereich und berechnen dann die Gesamtpunktzahl mit der Methode aggregate().

Wir haben das zurückgegebene Ergebnis gespeichert und angezeigt.

Beispielcode:

# Python 3.x
import pandas as pd

student = {
    "Name": ["Jhon", "Alia", "Jhon", "Alia", "Sam", "Smith", "Sam", "Smith"],
    "Section": ["A", "A", "A", "A", "B", "B", "B", "B"],
    "Course": ["Java", "Java", "Dart", "Dart", "Java", "Java", "Dart", "Dart"],
    "Marks": [70, 80, 90, 60, 80, 90, 50, 80],
}
df = pd.DataFrame(student)
display(df)
result = df.groupby(["Name", "Section"]).aggregate("sum")
display(result)

Ausgabe:

Datenrahmen

GroupBy aggregiert mehrere Spalten

Wir können auch mehrere aggregierte Operationen gleichzeitig durchführen. Wir übergeben die Liste der Operationsnamen an die Methode aggregate().

Hier haben wir die Mittel- und Gesamtnoten der Schüler mit der Methode aggregate() auf einmal berechnet, indem wir die Liste der Operationsnamen übergeben haben.

Beispielcode:

# Python 3.x
import pandas as pd

student = {
    "Name": ["Jhon", "Alia", "Jhon", "Alia", "Sam", "Smith", "Sam", "Smith"],
    "Section": ["A", "A", "A", "A", "B", "B", "B", "B"],
    "Course": ["Java", "Java", "Dart", "Dart", "Java", "Java", "Dart", "Dart"],
    "Marks": [70, 80, 90, 60, 80, 90, 50, 80],
}
df = pd.DataFrame(student)
display(df)
result = df.groupby(["Name", "Section"]).aggregate(["mean", "sum"])
display(result)

Ausgabe:

Datenrahmen

GroupBy Aggregat Mehrere Spalten Mehrere Methoden

Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Verwandter Artikel - Pandas GroupBy