Учитывая данные кадра Spark, которые у меня есть
val df = Seq(
("2019-01-01",100),
("2019-01-02",101),
("2019-01-03",102),
("2019-01-04",103),
("2019-01-05",102),
("2019-01-06",99),
("2019-01-07",98),
("2019-01-08",100),
("2019-01-09",47)
).toDF("day","records")
Я хочу добавить к этому новый столбец, чтобы получить среднее значение последних N записей в данный день. Например, если N = 3, то в данный день это значение должно быть средним из последних 3 значений EXCLUDING
текущей записи
Например, для дня 2019-01-05
это будет (103+102+101)/3
Как я могу эффективно использовать предложение over()
для того, чтобы сделать это в Spark?