Группировать в текущую строку значения предыдущей группы с помощью Pyspark

Итак, у меня есть фреймворк pyspark, организованный следующим образом:

ID timestamp value1 value2
1 1 a x
2 1 a y
1 2 b x
2 2 b y
1 3 c y
2 3 d y
1 4 l y
2 4 s y

и предположим, что метка времени — это номер дня от начала времени. Я бы хотел для каждой строки сгруппировать в список значения до -x дней относительно текущего идентификатора, чтобы иметь:

ID timestamp value1 value2 list_value_1
1 1 a X a
2 1 a y a
1 2 b x a,b
2 2 b y a,b
1 3 c y a,b,c
2 3 d y a,b,d
1 3 c y b,c,l
2 3 d y b,d,s

Я полагаю, что должен сделать это с помощью Window, но я не уверен, что делать дальше (я по какой-то причине плохо разбираюсь в Windows).

Источник: ledsshop.ru

Стиль жизни - Здоровье!