IniziaInizia gratis

Raggruppare e aggregare I

Una delle ragioni per cui le aggregazioni sono così potenti è la possibilità di aggiungere dei gruppi. PySpark ha un’intera classe dedicata ai DataFrame raggruppati: pyspark.sql.GroupedData, che hai visto negli ultimi due esercizi.

Hai imparato a creare un DataFrame raggruppato chiamando il metodo .groupBy() su un DataFrame senza argomenti.

Ora vedrai che, quando passi uno o più nomi di colonna del tuo DataFrame al metodo .groupBy(), i metodi di aggregazione si comportano come quando usi un’istruzione GROUP BY in una query SQL!

Ricorda: una SparkSession chiamata spark è già presente nel tuo workspace, insieme al DataFrame Spark flights.

Questo esercizio fa parte del corso

Fondamenti di PySpark

Visualizza il corso

Istruzioni dell'esercizio

  • Crea un DataFrame chiamato by_plane raggruppato per la colonna tailnum.
  • Usa il metodo .count() senza argomenti per contare quante tratte ha effettuato ciascun aereo.
  • Crea un DataFrame chiamato by_origin raggruppato per la colonna origin.
  • Calcola .avg() sulla colonna air_time per trovare la durata media dei voli da PDX e SEA.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Group by tailnum
by_plane = flights.groupBy("____")

# Number of flights each plane made
by_plane.____.show()

# Group by origin
by_origin = flights.groupBy("____")

# Average duration of flights from PDX and SEA
by_origin.avg("____").show()
Modifica ed esegui il codice