Как рассчитать скользящее среднее за 6 месяцев из ежедневных данных с помощью pyspark - PullRequest
0 голосов
/ 26 февраля 2019

Я пытаюсь вычислить скользящее среднее значение цены за последние шесть месяцев в pyspark.

В настоящее время в моей таблице 6-месячная отсроченная дата.

id  dates         lagged_6month  price
1   2017-06-02    2016-12-02     14.8
1   2017-08-09    2017-02-09     16.65
2   2017-08-16    2017-02-16     16
2   2018-05-14    2017-11-14     21.05
3   2017-09-01    2017-03-01     16.75

Желаемые результаты

id  dates       avg6mprice
 1   2017-06-02  20.6
 1   2017-08-09  21.5
 2   2017-08-16  16.25
 2   2018-05-14  25.05
 3   2017-09-01  17.75

Пример кода

from pyspark.sql.functions import col
from pyspark.sql import functions as F
df = sqlContext.table("price_table")
w = Window.partitionBy([col('id')]).rangeBetween(col('dates'),col('lagged_6month'))

Кажется, что RangeBetween не принимает столбцы в качестве аргумента в оконной функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...