我有多个时间序列数据。我想找出具有负面趋势的客户。
数据
customer_id date sales
A 2018-04-22 2.86
A 2018-04-29 4.39
A 2018-05-06 10.5
B 2018-08-05 10
B 2018-08-12 7.3
B 2018-08-19 8.4
tab <- Data %>% group_by(customer_id) %>% arrange(customer_id,date) %>%
mutate(new <- last(Data$sales))- first(Data$sales)))
在这里,我想为每个客户做事,预期的输出结果是
Customer_id new
A 7.64
B -1.6
这样我就可以吸引趋势不利的客户
答案 0 :(得分:2)
您可以这样做:
Data %>% group_by(customer_id) %>%
arrange(customer_id, date) %>%
summarise(new = last(sales)- first(sales))
输出:
# A tibble: 2 x 2
customer_id new
<chr> <dbl>
1 A 7.64
2 B -1.60