SHOW:
|
|
- or go back to the newest paste.
1 | - | --Сгруппируйте записи по месяцам. По каждому месяцу рассчитайте среднее количество заказов. |
1 | + | --Вычислите среднее количество заказов за каждый час. Затем отсортируйте данные по убыванию. |
2 | - | Напечатайте на экране таблицу с месяцами и средним количеством заказов по убыванию. |
2 | + | Выведите самые загруженные 10 часов и среднее количество заказов такси в эти часы. |
3 | ||
4 | from pyspark.sql import SparkSession | |
5 | ||
6 | APP_NAME = "DataFrames" | |
7 | SPARK_URL = "local[*]" | |
8 | ||
9 | spark = SparkSession.builder.appName(APP_NAME) \ | |
10 | .config('spark.ui.showConsoleProgress', 'false') \ | |
11 | .getOrCreate() | |
12 | ||
13 | taxi = spark.read.load('/datasets/pickups_terminal_5.csv', | |
14 | format='csv', header='true', inferSchema='true') | |
15 | ||
16 | taxi = taxi.fillna(0) | |
17 | ||
18 | taxi.registerTempTable("taxi") | |
19 | ||
20 | - | print(spark.sql('SELECT EXTRACT(month FROM date), AVG(pickups) FROM taxi \ |
20 | + | print(spark.sql('SELECT hour, AVG(pickups) FROM taxi \ |
21 | - | GROUP BY EXTRACT(month FROM date) ORDER BY AVG(pickups) DESC').show()) |
21 | + | GROUP BY hour ORDER BY AVG(pickups) DESC').show(10)) |