我每小时都有一个从2012-05-15-0700到2013-05-17-1800的活动快照。如何在此数据上创建时间序列并对其执行HoltWinters?
我尝试了以下
EventData<-ts(Eventmatrix$X20030,start=c(2012,5,15),frequency=8000)
HoltWinters(EventData)
但我在分解时遇到错误(ts(x [1L:wind],start = start(x),frequency = f),季节性):时间序列没有或少于2个句点
我应该从频率中得到什么价值?
答案 0 :(得分:17)
我认为您应该考虑使用包ets
中的forecast
来执行指数平滑。阅读this post以对HoltWinters
和ets
进行比较。
require(xts)
require(forecast)
time_index <- seq(from = as.POSIXct("2012-05-15 07:00"),
to = as.POSIXct("2012-05-17 18:00"), by = "hour")
set.seed(1)
value <- rnorm(n = length(time_index))
eventdata <- xts(value, order.by = time_index)
ets(eventdata)
现在,如果您想了解ets
语法的更多信息,请查看此函数的帮助以及Rob Hyndman的在线书籍(Chap 7 section 6)
答案 1 :(得分:2)
请查看以下可能回答问题的帖子:
Decompose xts hourly time series
它解释了如何使用POSIXct对象创建xts对象。此xts对象可以手动设置其频率属性,然后您可能可以使用HoltWinters