Gruppierung 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):
1234import 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))
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.
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:
- Daten gruppieren:
- Extrahieren Sie die Spalten
'AirportFrom'
,'DayOfWeek'
und'Time'
ausdata
(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'
.
- Extrahieren Sie die Spalten
- Geben Sie die ersten
10
Zeilen vondata_flights
aus.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
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()`?
Awesome!
Completion rate improved to 3.03
Gruppierung 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):
1234import 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))
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.
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:
- Daten gruppieren:
- Extrahieren Sie die Spalten
'AirportFrom'
,'DayOfWeek'
und'Time'
ausdata
(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'
.
- Extrahieren Sie die Spalten
- Geben Sie die ersten
10
Zeilen vondata_flights
aus.
Lösung
Danke für Ihr Feedback!
single