Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Fortgeschrittene Gruppierung | Daten Aggregieren
Data Wrangling mit Pandas
Abschnitt 4. Kapitel 4
single

single

bookFortgeschrittene Gruppierung

Swipe um das Menü anzuzeigen

Erweiterung des Wissens zur .groupby()-Methode. Wie bereits bekannt, kann die .agg()-Methode verwendet werden. Der Hauptvorteil dieser Funktion liegt in ihrer Flexibilität: Sie ermöglicht es, mehrere, unterschiedliche Aggregationen auf mehrere Spalten gleichzeitig anzuwenden und liefert eine übersichtliche Zusammenfassungstabelle.

Im folgenden Beispiel wurden Flüge nach 'Airline' gruppiert. Anschließend wurde mit .agg() die Gesamtanzahl der Flüge (über die Spalte 'Delay') gezählt und gleichzeitig die kürzeste sowie die längste Flugdauer (über die Spalte 'Length') ermittelt. Sehr praktisch, oder?

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) data_flights = data.groupby('Airline').agg({'Delay': 'count', 'Length': ['min', 'max']}) print(data_flights.head(10))
copy

Erläuterung:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg(): Abkürzung für "aggregate". Diese Methode fasst die gruppierten Daten anhand der angegebenen Regeln zu zusammengefassten Statistiken zusammen.
  • {}: Ein Python-Dictionary wird verwendet, um bestimmte Spalten bestimmten Operationen zuzuordnen. Die Schlüssel sind die gewünschten Spaltennamen, die Werte die anzuwendenden Funktionen.
  • 'Delay': 'count': Weist pandas an, die Zählfunktion auf die Spalte 'Delay' für jede Gruppe anzuwenden. Es wird der String-Alias 'count' verwendet, anstatt count() zu schreiben. Pandas erkennt diese Standardnamen für gängige Statistiken.
  • 'Length': ['min', 'max']: Um mehr als eine Funktion auf eine einzelne Spalte anzuwenden, müssen die Funktionsnamen in eine Liste [] gesetzt werden. Hier werden sowohl der Minimal- als auch der Maximalwert für die Spalte 'Length' berechnet.

Da mehrere Funktionen angewendet wurden, erstellt das resultierende DataFrame automatisch hierarchische (MultiIndex-)Spalten. Length erscheint auf der obersten Ebene, darunter sind min und max übersichtlich angeordnet.

Aufgabe

Wischen, um mit dem Codieren zu beginnen

Ihre Aufgabe ist es, tiefer einzutauchen und die durchschnittlichen sowie maximalen Verspätungszeiten in Abhängigkeit vom Startflughafen und anschließend vom Zielflughafen zu betrachten. Untersuchen Sie außerdem die mittlere Flugdauer. Befolgen Sie den folgenden Algorithmus:

Daten gruppieren:

  • Wenden Sie die Methode .groupby() auf den Datensatz data an;
  • Geben Sie innerhalb der .groupby()-Methode die Spalten 'AirportFrom' und 'AirportTo' an; die Reihenfolge ist entscheidend;
  • Berechnen Sie mit der Methode .agg() die aggregierten Werte: den Durchschnitts- und Maximalwert in der Spalte 'Time' sowie den Medianwert der Spalte 'Length'.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 4
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt