Agregare
Toate metodele comune de agregare, precum .min(), .max() și .count(), sunt metode ale obiectului GroupedData. Acestea sunt create prin apelarea metodei .groupBy() pe un DataFrame. Vei afla exact ce înseamnă asta în câteva exerciții. Deocamdată, tot ce trebuie să faci pentru a folosi aceste funcții este să apelezi acea metodă pe DataFrame-ul tău. De exemplu, pentru a găsi valoarea minimă a unei coloane, col, într-un DataFrame, df, poți scrie:
df.groupBy().min("col").show()
Acesta creează un obiect GroupedData (astfel poți folosi metoda .min()), găsește valoarea minimă din col și o returnează ca DataFrame.
Acum ești pregătit să faci propriile agregări!
În spațiul tău de lucru există deja o sesiune SparkSession numită spark, împreună cu DataFrame-ul Spark flights.
Acest exercițiu face parte din cursul
Fundamente PySpark
Instrucțiuni pentru exercițiu
- Găsește lungimea celui mai scurt zbor (în termeni de distanță) care a plecat din PDX, folosind mai întâi
.filter()și apoi metoda.min(). Realizează filtrarea referindu-te direct la coloană, nu transmițând un șir SQL. - Găsește durata celui mai lung zbor (în termeni de timp) care a plecat din SEA, folosind
filter()și metoda.max(). Realizează filtrarea referindu-te direct la coloană, nu transmițând un șir SQL.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Find the shortest flight from PDX in terms of distance
flights.filter(____.____ == ____).groupBy().____(____).show()
# Find the longest flight from SEA in terms of air time
flights.filter(____).groupBy().____.show()