Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Gruppierung Nach Mehreren Spalten | Datenaggregation
Fortgeschrittene Techniken in Pandas

bookGruppierung Nach Mehreren Spalten

Fügen wir einige Informationen zur Methode .groupby() hinzu. Es ist möglich, nach mehreren Spalten zu gruppieren, wobei die Reihenfolge in diesem Fall entscheidend ist. Im vorherigen Kapitel wurden die Daten nach der Flugnummer gruppiert und die Anzahl der Verspätungen gezählt. Diese Aufgabe kann erweitert werden, indem nicht nur nach der Spalte 'Flight', sondern auch nach der Spalte 'Airline' gruppiert wird. Überprüfen Sie die Informationen zum Datensatz und betrachten Sie dann dieses einfache Beispiel (die Ausgabe enthält nur die ersten 10 Zeilen):

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[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count() print(data_flights.head(10))
copy

Erläuterung:

data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
  • data[['Flight', 'Delay', 'Airline']] – Spalten, mit denen gearbeitet wird, einschließlich der Spalten, nach denen gruppiert wird;
  • .groupby(['Flight', 'Airline']) – hier sind 'Flight' und 'Airline' die Argumente der Funktion .groupby().

Beachten Sie: Wenn nach mehreren Spalten gruppiert werden soll, müssen diese in eine Liste gesetzt werden – die Reihenfolge ist entscheidend. In diesem Fall werden Zeilen des Datensatzes mit demselben Wert in der Spalte 'Flight' einer Gruppe zugeordnet. Innerhalb dieser Gruppen sucht die Funktion dann nach weiteren Gruppen für Zeilen mit demselben Wert in der Spalte 'Airline'. Durch die Methode .count(), die die Zeilen zählt, berechnet die Funktion die Anzahl der Zeilen in der Spalte 'Delay', die für jede 'Airline'-Gruppe denselben Wert in der Spalte 'Flight' aufweisen.

Aufgabe

Swipe to start coding

Ihre Aufgabe besteht darin, die Daten zunächst nach dem Abflughafen und anschließend nach dem Wochentag zu gruppieren. Berechnen Sie den Durchschnittswert der Zeit für die jeweiligen Gruppen. Befolgen Sie dazu den folgenden Algorithmus:

  1. Daten gruppieren:
    • Extrahieren Sie die Spalten 'AirportFrom', 'DayOfWeek' und 'Time' aus data (in dieser Reihenfolge);
    • Wenden Sie die Methode .groupby() auf die zuvor extrahierten Spalten an;
    • Geben Sie innerhalb der .groupby()-Methode die Spalten 'AirportFrom' und 'DayOfWeek' an; die Reihenfolge ist entscheidend;
    • Berechnen Sie den Mittelwert der Spalte 'Time'.
  2. Geben Sie die ersten 10 Zeilen von data_flights aus.

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 2
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

Suggested prompts:

Can you explain why the order of columns in `.groupby()` matters?

What does the `.count()` method do in this context?

Can you show how the output would change if we switched the order of the columns in `.groupby()`?

close

Awesome!

Completion rate improved to 3.03

bookGruppierung Nach Mehreren Spalten

Swipe um das Menü anzuzeigen

Fügen wir einige Informationen zur Methode .groupby() hinzu. Es ist möglich, nach mehreren Spalten zu gruppieren, wobei die Reihenfolge in diesem Fall entscheidend ist. Im vorherigen Kapitel wurden die Daten nach der Flugnummer gruppiert und die Anzahl der Verspätungen gezählt. Diese Aufgabe kann erweitert werden, indem nicht nur nach der Spalte 'Flight', sondern auch nach der Spalte 'Airline' gruppiert wird. Überprüfen Sie die Informationen zum Datensatz und betrachten Sie dann dieses einfache Beispiel (die Ausgabe enthält nur die ersten 10 Zeilen):

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[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count() print(data_flights.head(10))
copy

Erläuterung:

data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
  • data[['Flight', 'Delay', 'Airline']] – Spalten, mit denen gearbeitet wird, einschließlich der Spalten, nach denen gruppiert wird;
  • .groupby(['Flight', 'Airline']) – hier sind 'Flight' und 'Airline' die Argumente der Funktion .groupby().

Beachten Sie: Wenn nach mehreren Spalten gruppiert werden soll, müssen diese in eine Liste gesetzt werden – die Reihenfolge ist entscheidend. In diesem Fall werden Zeilen des Datensatzes mit demselben Wert in der Spalte 'Flight' einer Gruppe zugeordnet. Innerhalb dieser Gruppen sucht die Funktion dann nach weiteren Gruppen für Zeilen mit demselben Wert in der Spalte 'Airline'. Durch die Methode .count(), die die Zeilen zählt, berechnet die Funktion die Anzahl der Zeilen in der Spalte 'Delay', die für jede 'Airline'-Gruppe denselben Wert in der Spalte 'Flight' aufweisen.

Aufgabe

Swipe to start coding

Ihre Aufgabe besteht darin, die Daten zunächst nach dem Abflughafen und anschließend nach dem Wochentag zu gruppieren. Berechnen Sie den Durchschnittswert der Zeit für die jeweiligen Gruppen. Befolgen Sie dazu den folgenden Algorithmus:

  1. Daten gruppieren:
    • Extrahieren Sie die Spalten 'AirportFrom', 'DayOfWeek' und 'Time' aus data (in dieser Reihenfolge);
    • Wenden Sie die Methode .groupby() auf die zuvor extrahierten Spalten an;
    • Geben Sie innerhalb der .groupby()-Methode die Spalten 'AirportFrom' und 'DayOfWeek' an; die Reihenfolge ist entscheidend;
    • Berechnen Sie den Mittelwert der Spalte 'Time'.
  2. Geben Sie die ersten 10 Zeilen von data_flights aus.

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 2
single

single

some-alt