pandas GroupBy with Examples
Split rows into groups, calculate an average or total for each, and combine the results into a report.
- groupby(column)
- mean(), sum() and count() per group
- agg() for several results
- 1
A: 80, 90 | B: 70, 100Split by team - 2
mean()Apply to each group - 3
A 85.0 | B 85.0Combine
Split, apply, combine
Die Methode groupby() arbeitet nach dem Ablauf Aufteilen, Anwenden, Zusammenführen (split, apply, combine). Zuerst werden die Zeilen nach einer Spalte in Gruppen aufgeteilt, dann wird eine Berechnung wie Summe oder Mittelwert auf jede Gruppe angewendet, und zuletzt werden die Ergebnisse zu einer Tabelle zusammengeführt.
Das Wichtigste
groupby("team")splits the rows by team.- [
"score"].mean() calculates one value per group. reset_index()turns the result back into a normal table.
Wann verwendet man das?
- Tabellarische Daten wie CSV- oder Excel-Dateien einlesen, bereinigen und umwandeln.
- Daten nach Gruppen analysieren, auswerten und zusammenfassen.
- Daten für Berichte, Diagramme oder Machine-Learning-Modelle vorbereiten.
Beispielcode
import pandas as pd
results = pd.DataFrame({
"team": ["A", "A", "B", "B"],
"score": [80, 90, 70, 100],
})
averages = results.groupby("team")["score"].mean().reset_index()
print(averages)
Ergebnis der Ausführung
team score
0 A 85.0
1 B 85.0
Erklärung des Codes
Die Anweisung results.groupby("team") teilt die Zeilen in die Gruppen A und B. Danach berechnet ["score"].mean() die Durchschnittspunktzahl jeder Gruppe, beide liegen bei 85.0. Das Ergebnis verwendet zunächst den Teamnamen als Index, deshalb macht reset_index() die Spalte team wieder zu einer normalen Spalte des DataFrames.
Ändere die Werte und führe das Programm im CodeUtility Python Online-Compiler aus, ohne Python lokal zu installieren.
Übungen zur Vertiefung
Ändere den Code anhand der folgenden Vorschläge. Wenn du selbst etwas änderst und das Ergebnis beobachtest, verstehst du viel mehr, als wenn du den Code nur liest.
- Füge den Beispieldaten Zeilen, Spalten und ein paar fehlende Werte hinzu.
- Kombiniere Filtern, Sortieren und groupby zu einem kleinen Bericht.
- Lies eine echte Datendatei ein, prüfe den Datentyp jeder Spalte und behandle ungültige Werte.
Mit einer Challenge üben
Nutze den Inhalt dieser Lektion, um ein echtes Problem zu lösen. Jede Challenge läuft im Browser, mit sofortigen Tests und einem KI-Review.
- Tournament Standings Rank teams from match records. Mittel
- Naive-Bayes-Klassifikator Sage eine Klasse aus kategorialen Merkmalen mit dem Satz von Bayes und Laplace-Glättung voraus. Mittel