View difference between Paste ID: mChaUHr2 and GusDNKy1
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))