Zacznij terazZacznij za darmo

Grupowanie i agregacja II

Oprócz metod GroupedData, które już poznałeś, dostępna jest również metoda .agg(). Pozwala ona przekazać wyrażenie agregujące korzystające z dowolnej funkcji agregującej dostępnej w submodule pyspark.sql.functions.

Submoduł ten zawiera wiele przydatnych funkcji, na przykład do obliczania odchylenia standardowego. Wszystkie funkcje agregujące w tym submodule przyjmują nazwę kolumny z tabeli GroupedData.

Pamiętaj, że w twoim środowisku roboczym dostępna jest już sesja SparkSession o nazwie spark oraz Spark DataFrame flights. Zgrupowane obiekty DataFrame utworzone w poprzednim ćwiczeniu są również dostępne.

To ćwiczenie jest częścią kursu

Podstawy PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj submoduł pyspark.sql.functions jako F.
  • Utwórz tabelę GroupedData o nazwie by_month_dest, zgrupowaną według kolumn month i dest. Odwołaj się do obu kolumn, przekazując ich nazwy jako osobne argumenty.
  • Użyj metody .avg() na obiekcie by_month_dest, aby obliczyć średnie opóźnienie odlotu (dep_delay) w każdym miesiącu dla każdego miejsca docelowego.
  • Wyznacz odchylenie standardowe kolumny dep_delay, korzystając z metody .agg() z funkcją F.stddev().

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Import pyspark.sql.functions as F
import ____ as F

# Group by month and dest
by_month_dest = flights.groupBy(____)

# Average departure delay by month and destination
by_month_dest.____.show()

# Standard deviation of departure delay
by_month_dest.agg(F.____(____)).show()
Edytuj i uruchom kod