Håndtering av Pivottabeller
Python har en analog til .groupby()
-metoden som kan gi samme resultat. Det er opp til deg hvilken funksjon du vil bruke. La oss lære dette ved hjelp av et eksempel. Ved å bruke følgende funksjon, kalt .pivot_table()
, skal vi beregne gjennomsnittsverdiene i kolonnen 'Length'
som har samme verdi i kolonnen 'Flight'
:
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())
Forklaring:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
– funksjon som lager pivottabeller;data
– dataframen vi bruker;values = 'Length'
– til argumentetvalues
tilordner vi kolonner med samme gruppe, hvor vi skal beregne gjennomsnitt, maksimum osv. Hvis du vil gruppere etter flere kolonner, legg dem i en liste; rekkefølgen er ikke viktig;index = 'Flight'
–index
er et argument hvor du tilordner navnet på en kolonne eller kolonner du vil gruppere etter. Hvis du vil gruppere etter flere kolonner, legg dem i en liste; rekkefølgen er viktig, som i.groupby()
-funksjonen;aggfunc = 'mean'
– tilsvarendeagg
i.groupby()
-metoden, haraggfunc
nøyaktig samme syntaks somagg
. Du kan derfor legge til flere funksjoner her ved å legge dem i en liste for å spesifisere funksjoner for ulike kolonner ved å bruke krøllparenteser.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
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
Håndtering av Pivottabeller
Sveip for å vise menyen
Python har en analog til .groupby()
-metoden som kan gi samme resultat. Det er opp til deg hvilken funksjon du vil bruke. La oss lære dette ved hjelp av et eksempel. Ved å bruke følgende funksjon, kalt .pivot_table()
, skal vi beregne gjennomsnittsverdiene i kolonnen 'Length'
som har samme verdi i kolonnen 'Flight'
:
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())
Forklaring:
data = pd.pivot_table(data, values = 'Length',
index = 'Flight',
aggfunc = 'mean')
pd.pivot_table()
– funksjon som lager pivottabeller;data
– dataframen vi bruker;values = 'Length'
– til argumentetvalues
tilordner vi kolonner med samme gruppe, hvor vi skal beregne gjennomsnitt, maksimum osv. Hvis du vil gruppere etter flere kolonner, legg dem i en liste; rekkefølgen er ikke viktig;index = 'Flight'
–index
er et argument hvor du tilordner navnet på en kolonne eller kolonner du vil gruppere etter. Hvis du vil gruppere etter flere kolonner, legg dem i en liste; rekkefølgen er viktig, som i.groupby()
-funksjonen;aggfunc = 'mean'
– tilsvarendeagg
i.groupby()
-metoden, haraggfunc
nøyaktig samme syntaks somagg
. Du kan derfor legge til flere funksjoner her ved å legge dem i en liste for å spesifisere funksjoner for ulike kolonner ved å bruke krøllparenteser.
Takk for tilbakemeldingene dine!