我是 R 中时间序列的新手,如果我犯了任何错误,请纠正我。
我每天都有商店中产品库存的快照。如果有帮助,您可以将其作为 Bestbuy 中的 iPad 数量,然后我去 Bestbuy 并计算他们仓库中的所有 Ipad :) 并记下。
我可以监控他们每天售出多少 iPad,以及他们何时补充库存。我的目标是尝试做一些时间序列分析。首先找到他们的 iPad 销量的趋势和季节性,然后建立一个爆发检测模型,这样如果有一天销量太低或太高。我会收到通知。
一些假数据:
library(zoo)
index <- seq(as.Date('2013-01-01'), as.Date('2013-01-31'), by="day")
data <- c(seq(5, 1), seq(15, 1), seq(10, 5), seq(10, 5))
z <- zoo(data, index)
plot(z)
(1) 是否有一个方便的函数来计算相邻两天的 delta 以首先获得他们的每日销售额?如此消极意味着卖了这么多 Ipad,而积极意味着补货。
(2) 当我试图使用分解来查找趋势时,它告诉我:
> decompose(z)
Error in decompose(z) : time series has no or less than 2 periods
然后我意识到我需要确定一周是一个好的开始的季节性。所以我可以做到。
plot(decompose(ts(z[,1], frequency=7)))
我知道不知何故,我需要修改期间以使其正常工作。但季节性实际上因产品而异,我不知道如何处理这个问题。
(3) 欢迎对我的想法提出一般性评论。例如,上图基本上显示他们几乎每天都卖出 1 个 pad。然后我需要以某种方式检测,几天后他们卖出了超过 10 台 ipad,我将把它们当作一个爆发。一般来说,是否有其他易于使用的 R 包进行突发检测?谢谢