Gruppering Efter Flera Kolumner
Låt oss lägga till information om metoden .groupby()
. Du kan gruppera efter flera kolumner, men ordningen är avgörande i detta fall. I föregående kapitel grupperade vi data efter flygnummer och räknade antalet förseningar. Vi kan göra denna uppgift mer komplex genom att gruppera inte bara efter kolumnen 'Flight'
, utan även efter kolumnen 'Airline'
. Uppdatera informationen om datasettet och titta sedan på detta enkla exempel (utdata innehåller endast de första 10 raderna):
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))
Förklaring:
data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
data[['Flight', 'Delay', 'Airline']]
– kolumnerna du arbetar med, inklusive de kolumner du ska gruppera efter;.groupby(['Flight', 'Airline'])
– här är'Flight'
och'Airline'
argument till funktionen.groupby()
.
Observera att om du vill gruppera efter flera kolumner, lägg dem i en lista – ordningen är avgörande. Så i vårt fall, om raderna i datasettet har samma värde i kolumnen 'Flight'
, kommer de att tillhöra en grupp. Sedan, inom dessa grupper, hittar funktionen ytterligare grupper för rader med samma värde i kolumnen 'Airline'
. Därefter, tack vare metoden .count()
som räknar raderna, kommer vår funktion att beräkna antalet rader i kolumnen 'Delay'
som har samma värde i kolumnen 'Airline'
för varje 'Flight'
-grupp.
Swipe to start coding
Din uppgift här är att gruppera data efter flygplatsen där flyget startade och därefter efter veckodag. Beräkna den genomsnittliga tiden för grupperna. Följ algoritmen för att utföra uppgiften:
- Gruppera data:
- Extrahera kolumnerna
'AirportFrom'
,'DayOfWeek'
och'Time'
fråndata
(i denna ordning); - Använd metoden
.groupby()
på de tidigare nämnda kolumnerna; - Placera kolumnerna
'AirportFrom'
och'DayOfWeek'
inom.groupby()
-metoden; ordningen är viktig; - Beräkna medelvärdet för kolumnen
'Time'
.
- Extrahera kolumnerna
- Visa de första
10
raderna avdata_flights
.
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
Awesome!
Completion rate improved to 3.03
Gruppering Efter Flera Kolumner
Svep för att visa menyn
Låt oss lägga till information om metoden .groupby()
. Du kan gruppera efter flera kolumner, men ordningen är avgörande i detta fall. I föregående kapitel grupperade vi data efter flygnummer och räknade antalet förseningar. Vi kan göra denna uppgift mer komplex genom att gruppera inte bara efter kolumnen 'Flight'
, utan även efter kolumnen 'Airline'
. Uppdatera informationen om datasettet och titta sedan på detta enkla exempel (utdata innehåller endast de första 10 raderna):
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))
Förklaring:
data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
data[['Flight', 'Delay', 'Airline']]
– kolumnerna du arbetar med, inklusive de kolumner du ska gruppera efter;.groupby(['Flight', 'Airline'])
– här är'Flight'
och'Airline'
argument till funktionen.groupby()
.
Observera att om du vill gruppera efter flera kolumner, lägg dem i en lista – ordningen är avgörande. Så i vårt fall, om raderna i datasettet har samma värde i kolumnen 'Flight'
, kommer de att tillhöra en grupp. Sedan, inom dessa grupper, hittar funktionen ytterligare grupper för rader med samma värde i kolumnen 'Airline'
. Därefter, tack vare metoden .count()
som räknar raderna, kommer vår funktion att beräkna antalet rader i kolumnen 'Delay'
som har samma värde i kolumnen 'Airline'
för varje 'Flight'
-grupp.
Swipe to start coding
Din uppgift här är att gruppera data efter flygplatsen där flyget startade och därefter efter veckodag. Beräkna den genomsnittliga tiden för grupperna. Följ algoritmen för att utföra uppgiften:
- Gruppera data:
- Extrahera kolumnerna
'AirportFrom'
,'DayOfWeek'
och'Time'
fråndata
(i denna ordning); - Använd metoden
.groupby()
på de tidigare nämnda kolumnerna; - Placera kolumnerna
'AirportFrom'
och'DayOfWeek'
inom.groupby()
-metoden; ordningen är viktig; - Beräkna medelvärdet för kolumnen
'Time'
.
- Extrahera kolumnerna
- Visa de första
10
raderna avdata_flights
.
Lösning
Tack för dina kommentarer!
single