У меня есть Spark DF, к которому я пытаюсь применить дополнительную группировку. Это отсортированный кадр данных в виде
--------------------------------------
| id | timestamp | head_indices |
--------------------------------------
| 1 | 23 | 1 |
| 1 | 24 | 0 |
| 1 | 25 | 0 |
| 1 | 55 | 1 |
| 1 | 56 | 0 |
| 1 | 57 | 0 |
| 1 | 58 | 0 |
| 1 | 75 | 1 |
| 1 | 77 | 0 |
| 2 | 43 | 1 |
| 2 | 44 | 0 |
| 2 | 45 | 0 |
--------------------------------------
. В этих данных каждый id
имеет некоторое количество смежных строк, где начало каждой последовательности обозначается head_indices
. Я пытаюсь использовать head_indices
для перечисления смежных последовательностей в новый столбец, чтобы преобразование впоследствии выглядело так:
-----------------------------------------------
| id | timestamp | head_indices | seq_id |
-----------------------------------------------
| 1 | 23 | 1 | 1 |
| 1 | 24 | 0 | 1 |
| 1 | 25 | 0 | 1 |
| 1 | 55 | 1 | 2 |
| 1 | 56 | 0 | 2 |
| 1 | 57 | 0 | 2 |
| 1 | 58 | 0 | 2 |
| 1 | 75 | 1 | 3 |
| 1 | 77 | 0 | 3 |
| 2 | 43 | 1 | 1 |
| 2 | 44 | 0 | 1 |
| 2 | 45 | 0 | 1 |
-----------------------------------------------
Где seq_id
представляет индекс последовательности, разделенный id
.
Любое руководство будет приветствоваться