Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Erweiterte Gruppierung | Daten Aggregieren
Fortgeschrittene Techniken in Pandas
course content

Kursinhalt

Fortgeschrittene Techniken in Pandas

Fortgeschrittene Techniken in Pandas

1. Vertraut Werden mit Indizierung und Datenauswahl
2. Umgang mit Bedingungen
3. Daten Extrahieren
4. Daten Aggregieren
5. Datenvorverarbeitung

book
Erweiterte Gruppierung

Lassen Sie uns unser Wissen über die .groupby()-Methode erweitern. Wie Sie sich erinnern, können wir die .agg()-Methode verwenden. Tatsächlich sind die Hauptvorteile dieser Funktion, dass wir eine andere Funktion auf die numerischen Spalten mit einem Gruppenschlüssel anwenden können. Schauen Sie sich das Beispiel an, in dem wir Flüge nach der Spalte 'Airline' gruppiert, dann die Werte in 'Delay' für jede 'Airline' gezählt und die minimalen und maximalen Werte für die Spalte 'Length' berechnet haben. So praktisch, nicht wahr?

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

Erklärung:

  • .agg() - eine Methode, die es uns ermöglicht, Funktionen auf eine Serie oder auf jedes Element separat anzuwenden;
  • {} - wir verwenden geschweifte Klammern, um die Spalte anzugeben und Funktionen direkt auf sie anzuwenden;
  • 'Delay': 'count' - wendet die .count()-Funktion auf die Werte in der 'Delay'-Spalte mit demselben Schlüsselgruppenschlüssel an;
  • 'Length': ['min', 'max'] - wendet die .min()- und .max()-Funktionen auf die Werte in der 'Length'-Spalte mit demselben Schlüsselgruppenschlüssel an. Sie müssen nur den Spaltennamen ohne die () oder .-Symbole in der Funktion angeben. Achten Sie darauf, wenn Sie mehrere Funktionen auf dieselbe Spalte anwenden möchten, müssen Sie sie in die Liste setzen.
Aufgabe

Swipe to start coding

Wir können annehmen, dass eine Verzögerung von der Fluggesellschaft oder dem Flughafen abhängt, aber lassen Sie uns tiefer eintauchen und die durchschnittlichen und maximalen Verzögerungszeiten in Abhängigkeit vom Flughafen, von dem der Flug gestartet ist, und dann vom Flughafen, an dem der Flug endete, betrachten. Schauen Sie sich auch die mittlere Länge des Fluges an. Befolgen Sie den Algorithmus:

Daten gruppieren:

  • Wenden Sie die .groupby()-Methode auf den Datensatz data an;
  • Innerhalb der .groupby()-Methode setzen Sie die Spalten 'AirportFrom' und 'AirportTo'; die Reihenfolge ist entscheidend;
  • Verwenden Sie die .agg()-Methode, um die aggregierten Werte zu berechnen: den Durchschnitts- und Maximalwert in der Spalte 'Time' und 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
toggle bottom row

book
Erweiterte Gruppierung

Lassen Sie uns unser Wissen über die .groupby()-Methode erweitern. Wie Sie sich erinnern, können wir die .agg()-Methode verwenden. Tatsächlich sind die Hauptvorteile dieser Funktion, dass wir eine andere Funktion auf die numerischen Spalten mit einem Gruppenschlüssel anwenden können. Schauen Sie sich das Beispiel an, in dem wir Flüge nach der Spalte 'Airline' gruppiert, dann die Werte in 'Delay' für jede 'Airline' gezählt und die minimalen und maximalen Werte für die Spalte 'Length' berechnet haben. So praktisch, nicht wahr?

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

Erklärung:

  • .agg() - eine Methode, die es uns ermöglicht, Funktionen auf eine Serie oder auf jedes Element separat anzuwenden;
  • {} - wir verwenden geschweifte Klammern, um die Spalte anzugeben und Funktionen direkt auf sie anzuwenden;
  • 'Delay': 'count' - wendet die .count()-Funktion auf die Werte in der 'Delay'-Spalte mit demselben Schlüsselgruppenschlüssel an;
  • 'Length': ['min', 'max'] - wendet die .min()- und .max()-Funktionen auf die Werte in der 'Length'-Spalte mit demselben Schlüsselgruppenschlüssel an. Sie müssen nur den Spaltennamen ohne die () oder .-Symbole in der Funktion angeben. Achten Sie darauf, wenn Sie mehrere Funktionen auf dieselbe Spalte anwenden möchten, müssen Sie sie in die Liste setzen.
Aufgabe

Swipe to start coding

Wir können annehmen, dass eine Verzögerung von der Fluggesellschaft oder dem Flughafen abhängt, aber lassen Sie uns tiefer eintauchen und die durchschnittlichen und maximalen Verzögerungszeiten in Abhängigkeit vom Flughafen, von dem der Flug gestartet ist, und dann vom Flughafen, an dem der Flug endete, betrachten. Schauen Sie sich auch die mittlere Länge des Fluges an. Befolgen Sie den Algorithmus:

Daten gruppieren:

  • Wenden Sie die .groupby()-Methode auf den Datensatz data an;
  • Innerhalb der .groupby()-Methode setzen Sie die Spalten 'AirportFrom' und 'AirportTo'; die Reihenfolge ist entscheidend;
  • Verwenden Sie die .agg()-Methode, um die aggregierten Werte zu berechnen: den Durchschnitts- und Maximalwert in der Spalte 'Time' und 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
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
We're sorry to hear that something went wrong. What happened?
some-alt