Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Avanceret Gruppering | Aggregering af Data
Avancerede Teknikker i Pandas

bookAvanceret Gruppering

Lad os udvide vores viden om .groupby()-metoden. Som du husker, kan vi bruge .agg()-metoden. Faktisk er den største fordel ved denne funktion, at vi kan anvende forskellige funktioner på de numeriske kolonner med én gruppe-nøgle. Se eksemplet, hvor vi grupperede flyvninger efter kolonnen 'Airline', derefter talte værdierne i 'Delay' for hver 'Airline', og beregnede minimums- og maksimumsværdierne for kolonnen 'Length'. Meget praktisk, ikke sandt?

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.groupby('Airline').agg({'Delay': 'count', 'Length': ['min', 'max']}) print(data_flights.head(10))
copy

Forklaring:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg() – en metode, der gør det muligt at anvende funktioner på en serie eller på hvert element separat;
  • {} – vi bruger krøllede parenteser til at angive kolonnen og anvende funktioner direkte på dem;
  • 'Delay': 'count' – anvender .count()-funktionen på værdierne i 'Delay'-kolonnen med samme gruppe-nøgle;
  • 'Length': ['min', 'max'] – anvender .min()- og .max()-funktionerne på værdierne i 'Length'-kolonnen med samme gruppe-nøgle. Du skal blot angive kolonnenavnet uden () eller .-symboler i funktionen. Bemærk, at hvis du vil anvende flere funktioner på den samme kolonne, skal du placere dem i en liste.
Opgave

Swipe to start coding

Vi kan antage, at en forsinkelse afhænger af flyselskabet eller lufthavnen, men lad os undersøge det nærmere og se på de gennemsnitlige og maksimale forsinkelsestider afhængigt af den lufthavn, hvorfra flyet startede, og derefter på den lufthavn, hvor flyet endte. Se også på medianen for flyvningens længde. Følg algoritmen:

Gruppér data:

  • Anvend .groupby()-metoden på datasættet data;
  • Indsæt kolonnerne .groupby() og 'AirportFrom' i 'AirportTo'-metoden; rækkefølgen er afgørende;
  • Brug .agg()-metoden til at beregne de aggregerede værdier: gennemsnits- og maksimumsværdien i kolonnen 'Time', samt medianværdien af kolonnen 'Length'.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 4
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain what the output of this code would look like?

What other functions can I use with `.agg()` besides 'count', 'min', and 'max'?

How can I group by multiple columns using `.groupby()` and `.agg()`?

close

Awesome!

Completion rate improved to 3.03

bookAvanceret Gruppering

Stryg for at vise menuen

Lad os udvide vores viden om .groupby()-metoden. Som du husker, kan vi bruge .agg()-metoden. Faktisk er den største fordel ved denne funktion, at vi kan anvende forskellige funktioner på de numeriske kolonner med én gruppe-nøgle. Se eksemplet, hvor vi grupperede flyvninger efter kolonnen 'Airline', derefter talte værdierne i 'Delay' for hver 'Airline', og beregnede minimums- og maksimumsværdierne for kolonnen 'Length'. Meget praktisk, ikke sandt?

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.groupby('Airline').agg({'Delay': 'count', 'Length': ['min', 'max']}) print(data_flights.head(10))
copy

Forklaring:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg() – en metode, der gør det muligt at anvende funktioner på en serie eller på hvert element separat;
  • {} – vi bruger krøllede parenteser til at angive kolonnen og anvende funktioner direkte på dem;
  • 'Delay': 'count' – anvender .count()-funktionen på værdierne i 'Delay'-kolonnen med samme gruppe-nøgle;
  • 'Length': ['min', 'max'] – anvender .min()- og .max()-funktionerne på værdierne i 'Length'-kolonnen med samme gruppe-nøgle. Du skal blot angive kolonnenavnet uden () eller .-symboler i funktionen. Bemærk, at hvis du vil anvende flere funktioner på den samme kolonne, skal du placere dem i en liste.
Opgave

Swipe to start coding

Vi kan antage, at en forsinkelse afhænger af flyselskabet eller lufthavnen, men lad os undersøge det nærmere og se på de gennemsnitlige og maksimale forsinkelsestider afhængigt af den lufthavn, hvorfra flyet startede, og derefter på den lufthavn, hvor flyet endte. Se også på medianen for flyvningens længde. Følg algoritmen:

Gruppér data:

  • Anvend .groupby()-metoden på datasættet data;
  • Indsæt kolonnerne .groupby() og 'AirportFrom' i 'AirportTo'-metoden; rækkefølgen er afgørende;
  • Brug .agg()-metoden til at beregne de aggregerede værdier: gennemsnits- og maksimumsværdien i kolonnen 'Time', samt medianværdien af kolonnen 'Length'.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 4
single

single

some-alt