Avancerad 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?
1234import 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))
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.
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å datasettetdata; - 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
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
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()`?
Awesome!
Completion rate improved to 3.03
Avancerad 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?
1234import 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))
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.
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å datasettetdata; - 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
Tack för dina kommentarer!
single