Raggruppamento per Più Colonne
Aggiungiamo alcune informazioni sul metodo .groupby()
. È possibile raggruppare per più colonne, ma in questo caso l'ordine è fondamentale. Nel capitolo precedente, abbiamo raggruppato i dati per numero di volo e contato il numero di ritardi. Possiamo rendere questo compito più complesso raggruppando non solo per la colonna 'Flight'
, ma anche per la colonna 'Airline'
. Rivedi le informazioni sul dataset e poi osserva questo semplice esempio (l'output contiene solo le prime 10 righe):
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))
Spiegazione:
data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
data[['Flight', 'Delay', 'Airline']]
- colonne su cui lavorare, incluse quelle su cui si effettua il raggruppamento;.groupby(['Flight', 'Airline'])
- qui,'Flight'
e'Airline'
sono argomenti della funzione.groupby()
.
Attenzione: se si desidera raggruppare per più colonne, inserirle in una lista - l'ordine è fondamentale. Quindi, nel nostro caso, se le righe del dataset hanno lo stesso valore nella colonna 'Flight'
, esse apparterranno a un gruppo. All'interno di questi gruppi, la funzione individua altri gruppi per le righe con lo stesso valore nella colonna 'Airline'
. Poi, grazie al metodo .count()
che conta le righe, la funzione calcolerà il numero di righe nella colonna 'Delay'
che hanno lo stesso valore nella colonna 'Airline'
per ciascun gruppo 'Flight'
.
Swipe to start coding
Il compito consiste nel raggruppare i dati in base all'aeroporto di partenza del volo e successivamente al giorno della settimana. Calcolare il tempo medio per ciascun gruppo. Seguire il seguente algoritmo per gestire il compito:
- Raggruppamento dei dati:
- Estrarre le colonne
'AirportFrom'
,'DayOfWeek'
e'Time'
dadata
(in questo ordine); - Applicare il metodo
.groupby()
alle colonne precedentemente estratte; - All'interno del metodo
.groupby()
, inserire le colonne'AirportFrom'
e'DayOfWeek'
; l'ordine è fondamentale; - Calcolare il valore medio della colonna
'Time'
.
- Estrarre le colonne
- Visualizzare le prime
10
righe didata_flights
.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
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
Raggruppamento per Più Colonne
Scorri per mostrare il menu
Aggiungiamo alcune informazioni sul metodo .groupby()
. È possibile raggruppare per più colonne, ma in questo caso l'ordine è fondamentale. Nel capitolo precedente, abbiamo raggruppato i dati per numero di volo e contato il numero di ritardi. Possiamo rendere questo compito più complesso raggruppando non solo per la colonna 'Flight'
, ma anche per la colonna 'Airline'
. Rivedi le informazioni sul dataset e poi osserva questo semplice esempio (l'output contiene solo le prime 10 righe):
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))
Spiegazione:
data[['Flight', 'Delay', 'Airline']].groupby(['Flight', 'Airline']).count()
data[['Flight', 'Delay', 'Airline']]
- colonne su cui lavorare, incluse quelle su cui si effettua il raggruppamento;.groupby(['Flight', 'Airline'])
- qui,'Flight'
e'Airline'
sono argomenti della funzione.groupby()
.
Attenzione: se si desidera raggruppare per più colonne, inserirle in una lista - l'ordine è fondamentale. Quindi, nel nostro caso, se le righe del dataset hanno lo stesso valore nella colonna 'Flight'
, esse apparterranno a un gruppo. All'interno di questi gruppi, la funzione individua altri gruppi per le righe con lo stesso valore nella colonna 'Airline'
. Poi, grazie al metodo .count()
che conta le righe, la funzione calcolerà il numero di righe nella colonna 'Delay'
che hanno lo stesso valore nella colonna 'Airline'
per ciascun gruppo 'Flight'
.
Swipe to start coding
Il compito consiste nel raggruppare i dati in base all'aeroporto di partenza del volo e successivamente al giorno della settimana. Calcolare il tempo medio per ciascun gruppo. Seguire il seguente algoritmo per gestire il compito:
- Raggruppamento dei dati:
- Estrarre le colonne
'AirportFrom'
,'DayOfWeek'
e'Time'
dadata
(in questo ordine); - Applicare il metodo
.groupby()
alle colonne precedentemente estratte; - All'interno del metodo
.groupby()
, inserire le colonne'AirportFrom'
e'DayOfWeek'
; l'ordine è fondamentale; - Calcolare il valore medio della colonna
'Time'
.
- Estrarre le colonne
- Visualizzare le prime
10
righe didata_flights
.
Soluzione
Grazie per i tuoi commenti!
single