Umgang mit Pivot-Tabellen
Python verfügt über ein Analogon zur Methode .groupby()
, das zum gleichen Ergebnis führen kann. Es liegt an Ihnen, welche Funktion Sie verwenden möchten. Lernen wir dies anhand eines Beispiels. Mit der folgenden Funktion, genannt .pivot_table()
, berechnen wir die Mittelwerte der Spalte 'Length'
, die denselben Wert in der Spalte 'Flight'
aufweisen:
123456789101112131415import 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) # The code using .groupby() data_flights_1 = data[['Length', 'Flight']].groupby('Flight').mean() # The same code using .groupby() data_flights_2 = data[['Length', 'Flight']].groupby('Flight').agg('mean') # The same code using .pivot_table() data_flights_3 = pd.pivot_table(data, values = 'Length', index = 'Flight', aggfunc = 'mean') print(data_flights_1.head())
Erläuterung:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
– Funktion zur Erstellung von Pivot-Tabellen;data
– verwendeter DataFrame;values = 'Length'
– dem Argumentvalues
werden die Spalten zugewiesen, die denselben Gruppierungswert besitzen und für die die Berechnung des Mittelwerts, Maximums usw. durchgeführt wird. Bei Gruppierung nach mehreren Spalten diese als Liste angeben; die Reihenfolge ist hierbei nicht entscheidend;index = 'Flight'
–index
ist ein Argument, dem der Name einer Spalte oder mehrerer Spalten zugewiesen wird, nach denen gruppiert werden soll. Bei Gruppierung nach mehreren Spalten diese als Liste angeben; die Reihenfolge ist hierbei entscheidend, wie bei der.groupby()
-Funktion;aggfunc = 'mean'
– entsprichtagg
in der.groupby()
-Methode,aggfunc
besitzt exakt die gleiche Syntax wieagg
. Es können mehrere Funktionen angegeben werden, indem sie in einer Liste zusammengefasst werden, um verschiedene Funktionen für unterschiedliche Spalten mit geschweiften Klammern zu spezifizieren.
Danke für Ihr Feedback!
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 the difference between .groupby() and .pivot_table() in more detail?
What other aggregation functions can I use with .pivot_table()?
How can I group by multiple columns using .pivot_table()?
Awesome!
Completion rate improved to 3.03
Umgang mit Pivot-Tabellen
Swipe um das Menü anzuzeigen
Python verfügt über ein Analogon zur Methode .groupby()
, das zum gleichen Ergebnis führen kann. Es liegt an Ihnen, welche Funktion Sie verwenden möchten. Lernen wir dies anhand eines Beispiels. Mit der folgenden Funktion, genannt .pivot_table()
, berechnen wir die Mittelwerte der Spalte 'Length'
, die denselben Wert in der Spalte 'Flight'
aufweisen:
123456789101112131415import 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) # The code using .groupby() data_flights_1 = data[['Length', 'Flight']].groupby('Flight').mean() # The same code using .groupby() data_flights_2 = data[['Length', 'Flight']].groupby('Flight').agg('mean') # The same code using .pivot_table() data_flights_3 = pd.pivot_table(data, values = 'Length', index = 'Flight', aggfunc = 'mean') print(data_flights_1.head())
Erläuterung:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
– Funktion zur Erstellung von Pivot-Tabellen;data
– verwendeter DataFrame;values = 'Length'
– dem Argumentvalues
werden die Spalten zugewiesen, die denselben Gruppierungswert besitzen und für die die Berechnung des Mittelwerts, Maximums usw. durchgeführt wird. Bei Gruppierung nach mehreren Spalten diese als Liste angeben; die Reihenfolge ist hierbei nicht entscheidend;index = 'Flight'
–index
ist ein Argument, dem der Name einer Spalte oder mehrerer Spalten zugewiesen wird, nach denen gruppiert werden soll. Bei Gruppierung nach mehreren Spalten diese als Liste angeben; die Reihenfolge ist hierbei entscheidend, wie bei der.groupby()
-Funktion;aggfunc = 'mean'
– entsprichtagg
in der.groupby()
-Methode,aggfunc
besitzt exakt die gleiche Syntax wieagg
. Es können mehrere Funktionen angegeben werden, indem sie in einer Liste zusammengefasst werden, um verschiedene Funktionen für unterschiedliche Spalten mit geschweiften Klammern zu spezifizieren.
Danke für Ihr Feedback!