Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Raggruppamento Avanzato | Aggregazione Dei Dati
Tecniche Avanzate in Pandas

bookRaggruppamento Avanzato

Approfondiamo la nostra conoscenza sul metodo .groupby(). Come ricorderai, possiamo utilizzare il metodo .agg(). Infatti, il principale vantaggio di questa funzione è che permette di applicare funzioni diverse alle colonne numeriche con una sola chiave di raggruppamento. Osserva l'esempio in cui abbiamo raggruppato i voli per la colonna 'Airline', poi contato i valori in 'Delay' per ciascuna 'Airline', e calcolato i valori minimo e massimo per la colonna 'Length'. Davvero comodo, vero?

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

Spiegazione:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg() - metodo che consente di applicare funzioni su una serie o su ciascun elemento separatamente;
  • {} - si usano le parentesi graffe per specificare la colonna e applicare direttamente le funzioni;
  • 'Delay': 'count' - applica la funzione .count() ai valori della colonna 'Delay' che hanno la stessa chiave di gruppo;
  • 'Length': ['min', 'max'] - applica le funzioni .min() e .max() ai valori della colonna 'Length' che hanno la stessa chiave di gruppo. È sufficiente inserire solo il nome della colonna senza i simboli () o . nella funzione. Attenzione: se si desidera applicare più funzioni alla stessa colonna, è necessario inserirle in una lista.
Compito

Swipe to start coding

Il tuo compito è approfondire l'analisi osservando i tempi medi e massimi di ritardo in base all'aeroporto di partenza del volo e successivamente all'aeroporto di arrivo. Analizza inoltre la lunghezza mediana del volo. Segui il seguente algoritmo:

Raggruppamento dei dati:

  • Applica il metodo .groupby() al dataset data;
  • All'interno del metodo .groupby(), inserisci le colonne 'AirportFrom' e 'AirportTo'; l'ordine è fondamentale;
  • Utilizzando il metodo .agg(), calcola i valori aggregati: il valore medio e massimo nella colonna 'Time' e il valore mediano della colonna 'Length'.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 4
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 3.03

bookRaggruppamento Avanzato

Scorri per mostrare il menu

Approfondiamo la nostra conoscenza sul metodo .groupby(). Come ricorderai, possiamo utilizzare il metodo .agg(). Infatti, il principale vantaggio di questa funzione è che permette di applicare funzioni diverse alle colonne numeriche con una sola chiave di raggruppamento. Osserva l'esempio in cui abbiamo raggruppato i voli per la colonna 'Airline', poi contato i valori in 'Delay' per ciascuna 'Airline', e calcolato i valori minimo e massimo per la colonna 'Length'. Davvero comodo, vero?

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

Spiegazione:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg() - metodo che consente di applicare funzioni su una serie o su ciascun elemento separatamente;
  • {} - si usano le parentesi graffe per specificare la colonna e applicare direttamente le funzioni;
  • 'Delay': 'count' - applica la funzione .count() ai valori della colonna 'Delay' che hanno la stessa chiave di gruppo;
  • 'Length': ['min', 'max'] - applica le funzioni .min() e .max() ai valori della colonna 'Length' che hanno la stessa chiave di gruppo. È sufficiente inserire solo il nome della colonna senza i simboli () o . nella funzione. Attenzione: se si desidera applicare più funzioni alla stessa colonna, è necessario inserirle in una lista.
Compito

Swipe to start coding

Il tuo compito è approfondire l'analisi osservando i tempi medi e massimi di ritardo in base all'aeroporto di partenza del volo e successivamente all'aeroporto di arrivo. Analizza inoltre la lunghezza mediana del volo. Segui il seguente algoritmo:

Raggruppamento dei dati:

  • Applica il metodo .groupby() al dataset data;
  • All'interno del metodo .groupby(), inserisci le colonne 'AirportFrom' e 'AirportTo'; l'ordine è fondamentale;
  • Utilizzando il metodo .agg(), calcola i valori aggregati: il valore medio e massimo nella colonna 'Time' e il valore mediano della colonna 'Length'.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 4
single

single

some-alt