Gruppering Efter Flere Kolonner
Lad os tilføje nogle oplysninger om metoden .groupby()
. Du kan gruppere efter flere kolonner, men rækkefølgen er afgørende i dette tilfælde. I det forrige kapitel grupperede vi data efter flynummer og talte antallet af forsinkelser. Vi kan gøre denne opgave mere kompleks ved at gruppere ikke kun efter kolonnen 'Flight'
, men også efter kolonnen 'Airline'
. Opdater informationen om datasættet og se derefter på dette enkle eksempel (outputtet indeholder kun de første 10 rækker):
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[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count() print(data_flights.head(10))
Forklaring:
data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
data[['Flight', 'Delay', 'Airline']]
- kolonner, der anvendes, inklusive de kolonner, der grupperes efter;.groupby(['Flight', 'Airline'])
- her er'Flight'
og'Airline'
argumenter til funktionen.groupby()
.
Bemærk, at hvis du vil gruppere efter flere kolonner, skal du placere dem i en liste – rækkefølgen er afgørende. Så i dette tilfælde, hvis rækkerne i datasættet har samme værdi i kolonnen 'Flight'
, tilhører de én gruppe. Inden for disse grupper finder funktionen yderligere grupper for rækker med samme værdi i kolonnen 'Airline'
. Derefter, på grund af metoden .count()
, som tæller rækkerne, vil funktionen beregne antallet af rækker i kolonnen 'Delay'
, der har samme værdi i kolonnen 'Airline'
for hver 'Flight'
-gruppe.
Swipe to start coding
Din opgave her er at gruppere data efter lufthavnen, hvorfra flyet startede, og derefter efter ugedag. Beregn gennemsnitstiden for grupperne. Følg algoritmen for at løse opgaven:
- Gruppér data:
- Udtræk kolonnerne
'AirportFrom'
,'DayOfWeek'
og'Time'
fradata
(i denne rækkefølge); - Anvend
.groupby()
-metoden på de nævnte kolonner; - Indsæt kolonnerne
'AirportFrom'
og'DayOfWeek'
i.groupby()
-metoden; rækkefølgen er vigtig; - Beregn gennemsnitsværdien af kolonnen
'Time'
.
- Udtræk kolonnerne
- Vis de første
10
rækker afdata_flights
.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Can you explain why the order of columns in `.groupby()` matters?
What does the `.count()` method do in this context?
Can you show how the output would change if we switched the order of the columns in `.groupby()`?
Awesome!
Completion rate improved to 3.03
Gruppering Efter Flere Kolonner
Stryg for at vise menuen
Lad os tilføje nogle oplysninger om metoden .groupby()
. Du kan gruppere efter flere kolonner, men rækkefølgen er afgørende i dette tilfælde. I det forrige kapitel grupperede vi data efter flynummer og talte antallet af forsinkelser. Vi kan gøre denne opgave mere kompleks ved at gruppere ikke kun efter kolonnen 'Flight'
, men også efter kolonnen 'Airline'
. Opdater informationen om datasættet og se derefter på dette enkle eksempel (outputtet indeholder kun de første 10 rækker):
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[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count() print(data_flights.head(10))
Forklaring:
data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
data[['Flight', 'Delay', 'Airline']]
- kolonner, der anvendes, inklusive de kolonner, der grupperes efter;.groupby(['Flight', 'Airline'])
- her er'Flight'
og'Airline'
argumenter til funktionen.groupby()
.
Bemærk, at hvis du vil gruppere efter flere kolonner, skal du placere dem i en liste – rækkefølgen er afgørende. Så i dette tilfælde, hvis rækkerne i datasættet har samme værdi i kolonnen 'Flight'
, tilhører de én gruppe. Inden for disse grupper finder funktionen yderligere grupper for rækker med samme værdi i kolonnen 'Airline'
. Derefter, på grund af metoden .count()
, som tæller rækkerne, vil funktionen beregne antallet af rækker i kolonnen 'Delay'
, der har samme værdi i kolonnen 'Airline'
for hver 'Flight'
-gruppe.
Swipe to start coding
Din opgave her er at gruppere data efter lufthavnen, hvorfra flyet startede, og derefter efter ugedag. Beregn gennemsnitstiden for grupperne. Følg algoritmen for at løse opgaven:
- Gruppér data:
- Udtræk kolonnerne
'AirportFrom'
,'DayOfWeek'
og'Time'
fradata
(i denne rækkefølge); - Anvend
.groupby()
-metoden på de nævnte kolonner; - Indsæt kolonnerne
'AirportFrom'
og'DayOfWeek'
i.groupby()
-metoden; rækkefølgen er vigtig; - Beregn gennemsnitsværdien af kolonnen
'Time'
.
- Udtræk kolonnerne
- Vis de første
10
rækker afdata_flights
.
Løsning
Tak for dine kommentarer!
single