Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Vertraut Werden mit der .groupby()-Methode | 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
Vertraut Werden mit der .groupby()-Methode

Ich freue mich, Sie in diesem Abschnitt zu sehen. Hier werden wir unsere Daten gruppieren, um Informationen über verschiedene Gruppen von Zeilen zu finden. Untersuchen Sie den Datensatz zu Verzögerungen (Sie können diese Tabelle horizontal scrollen):

Das Gruppieren von Daten ist vorteilhaft, und jetzt werden wir tiefer darauf eingehen. Stellen Sie sich vor, Sie möchten die Anzahl der Verzögerungen für jede Flugnummer berechnen. Schauen Sie sich das Codebeispiel an und dann die Erklärung:

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']].groupby('Flight').sum() print(data_flights.head())
copy

Erklärung:

  • data[['Flight', 'Delay']] - Dies sind die Spalten, mit denen Sie arbeiten werden, einschließlich der Spalten, die Sie gruppieren werden;
  • groupby('Flight') - Die 'Flight'-Spalte ist das Argument für die .groupby()-Funktion. Das bedeutet, dass Zeilen mit demselben Wert in der 'Flight'-Spalte zusammen gruppiert werden;
  • .sum() - Diese Funktion arbeitet auf Zeilen innerhalb jeder durch .groupby() erstellten Gruppe. In diesem Fall summiert sie die Werte in der 'Delay'-Spalte für Zeilen, die zur selben 'Flight'-Gruppe gehören.

Hinweis

Da die 'Delay'-Spalte nur 0 (keine Verzögerung aufgetreten) oder 1 (eine Verzögerung aufgetreten) als mögliche Werte enthält, stellt die Summe der Zeilen die Anzahl der Verzögerungen für jeden Flug dar.

Tatsächlich ist .sum() eine von vielen Aggregationsfunktionen, die Sie verwenden können. Sie werden mit allen vertraut, während Sie fortschreiten.

question-icon
Füllen Sie die Lücken aus, um den Mittelwert der `'Time'`-Spalte abhängig von der `'DayOfWeek'`-Spalte zu finden.

data_extracted = data[['', 'Time']]('').mean()
print(data_extracted)
DayOfWeekTime
3804.993130
4804.452984
5702.888362

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 1
We're sorry to hear that something went wrong. What happened?
some-alt