Как получить последние N строк каждой группы в спарклире? - PullRequest
0 голосов
/ 07 мая 2020

У меня есть фрейм данных Spark со столбцами id, категорией, отметкой времени, столбцами цены. Я хочу сгруппировать данные по идентификатору клиента, отсортировать категории по метке времени и получить последние n строк в каждой группе.

Я пробовал приведенный ниже код, но он перенастраивает только 3 строки для общих данных.
a <- data1 %>% dplyr::group_by(customer_id, category) %>% dplyr::arrange(dplyr::desc(timestamp)) %>% head(., n = 3)

предложите эффективное решение

1 Ответ

0 голосов
/ 07 мая 2020

Без данных примера мы не можем знать, будет ли это работать.

в Base R

data1 <- data1[order(data1$timestamp),]
lapply(split(data1,data1$customer_ID), tail, n=5)
...