Agrupamento e agregação I
Parte do que torna as agregações tão poderosas é a adição de grupos. O PySpark tem uma classe inteira dedicada a DataFrames agrupados: pyspark.sql.GroupedData, que você viu nos dois últimos exercícios.
Você aprendeu a criar um DataFrame agrupado chamando o método .groupBy() com um DataFrame sem argumentos.
Agora você verá que, quando passa o nome de uma ou mais colunas do DataFrame para o método .groupBy(), os métodos de agregação se comportam como quando você usa uma instrução GROUP BY em uma consulta SQL!
Lembre-se de que uma SparkSession chamada spark já está em seu espaço de trabalho, junto com o DataFrame flights do Spark.
Este exercício faz parte do curso
Introdução ao PySpark
Instruções do exercício
- Crie um DataFrame chamado
by_planeque seja agrupado pela colunatailnum. - Use o método
.count()sem argumentos para contar o número de voos que cada avião fez. - Crie um DataFrame chamado
by_originque seja agrupado pela colunaorigin. - Use
.avg()para encontrar a média da colunaair_timee descobrir a duração média dos voos de PDX e SEA.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()