Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Avancerad Gruppering | Aggregering av Data
Avancerade tekniker i pandas

bookAvancerad Gruppering

Låt oss utöka våra kunskaper om metoden .groupby(). Som du minns kan vi använda metoden .agg(). Faktum är att den största fördelen med denna funktion är att vi kan tillämpa olika funktioner på de numeriska kolumnerna med en gruppnyckel. Titta på exemplet där vi grupperade flygningar efter kolumnen 'Airline', sedan räknade värdena i 'Delay' för varje 'Airline', och beräknade minimi- och maximivärden för kolumnen 'Length'. Så smidigt, eller hur?

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

Förklaring:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg() – en metod som gör det möjligt att tillämpa funktioner på en serie eller på varje element separat;
  • {} – vi använder klamrar för att specificera kolumnen och tillämpa funktioner direkt på dem;
  • 'Delay': 'count' – tillämpar funktionen .count() på värdena i kolumnen 'Delay' med samma gruppnyckel;
  • 'Length': ['min', 'max'] – tillämpar funktionerna .min() och .max() på värdena i kolumnen 'Length' med samma gruppnyckel. Du behöver bara ange kolumnnamnet utan () eller .-symboler i funktionen. Observera att om du vill tillämpa flera funktioner på samma kolumn måste du lägga dem i en lista.
Uppgift

Swipe to start coding

Din uppgift är att fördjupa dig och undersöka genomsnittliga och maximala förseningstider beroende på flygplatsen där flyget startade och sedan på flygplatsen där flyget avslutades. Undersök även medianvärdet för flygningens längd. Följ algoritmen:

Gruppera data:

  • Använd metoden .groupby() på datasettet data;
  • Ange kolumnerna .groupby() och 'AirportFrom' inom 'AirportTo'-metoden; ordningen är avgörande;
  • Använd metoden .agg() för att beräkna aggregerade värden: genomsnittligt och maximalt värde i kolumnen 'Time', samt medianvärdet för kolumnen 'Length'.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 4
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

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

bookAvancerad Gruppering

Svep för att visa menyn

Låt oss utöka våra kunskaper om metoden .groupby(). Som du minns kan vi använda metoden .agg(). Faktum är att den största fördelen med denna funktion är att vi kan tillämpa olika funktioner på de numeriska kolumnerna med en gruppnyckel. Titta på exemplet där vi grupperade flygningar efter kolumnen 'Airline', sedan räknade värdena i 'Delay' för varje 'Airline', och beräknade minimi- och maximivärden för kolumnen 'Length'. Så smidigt, eller hur?

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

Förklaring:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg() – en metod som gör det möjligt att tillämpa funktioner på en serie eller på varje element separat;
  • {} – vi använder klamrar för att specificera kolumnen och tillämpa funktioner direkt på dem;
  • 'Delay': 'count' – tillämpar funktionen .count() på värdena i kolumnen 'Delay' med samma gruppnyckel;
  • 'Length': ['min', 'max'] – tillämpar funktionerna .min() och .max() på värdena i kolumnen 'Length' med samma gruppnyckel. Du behöver bara ange kolumnnamnet utan () eller .-symboler i funktionen. Observera att om du vill tillämpa flera funktioner på samma kolumn måste du lägga dem i en lista.
Uppgift

Swipe to start coding

Din uppgift är att fördjupa dig och undersöka genomsnittliga och maximala förseningstider beroende på flygplatsen där flyget startade och sedan på flygplatsen där flyget avslutades. Undersök även medianvärdet för flygningens längd. Följ algoritmen:

Gruppera data:

  • Använd metoden .groupby() på datasettet data;
  • Ange kolumnerna .groupby() och 'AirportFrom' inom 'AirportTo'-metoden; ordningen är avgörande;
  • Använd metoden .agg() för att beräkna aggregerade värden: genomsnittligt och maximalt värde i kolumnen 'Time', samt medianvärdet för kolumnen 'Length'.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 4
single

single

some-alt