Apache Spark подсчитывает количество событий в сегментах временных меток - PullRequest
0 голосов
/ 02 мая 2018

Я загрузил свои данные в фрейм данных Spark и использую Spark SQL для дальнейшей обработки.

Мой вопрос прост:

У меня есть данные как:

Event_ID Time_Stamp
1        2018-04-11T20:20..
2        2018-04-11T20:20..+1

и т. Д.

Я хочу получить количество событий, которые происходили каждые 2 минуты.

Итак,

Мой вывод будет:

Timestamp           No_of_events
2018-04-11T20:20..    2
2018-04-11T20:20..+2  3  

В Pandas это было довольно легко, но я не знаю, как это сделать в Spark SQL.

Данные вышеприведенного формата должны иметь метку времени в качестве столбца и число событий, которые произошли в этом интервале времени (т. Е. Ч / б метка времени и метка времени + 2 минуты), в качестве другого столбца.

Любая помощь очень ценится.

Спасибо.

1 Ответ

0 голосов
/ 02 мая 2018

Вы можете попробовать использовать оконную функцию:

  df.groupBy(window(df["Time_Stamp"], "2 minutes"))
    .count()
    .show()
...