首页 > 解决方案 > 如何分解不规则的时间序列?

问题描述

我有一个时间序列,其中包含从 2006 年到 2020 年的不规则时间数据,仅包括夏季月份(六月、七月、八月)。我想获得有关趋势、季节性和大部分残差的信息。

现在,我为多年来的每一天做了一个完整的时间轴,并合并了我的 lst 数据。

library(forecast)
library(xts)

timestamps <- data$date

dataRep <- data.frame(timestamps= as.Date(c("2007-07-15","2007-07-24", "2007-07-29","2009-06-25")),
                      lst = c(23.3132725761094, 27.5978287205735, " ",25.6451943453992))

tstamp <- data.frame(x = seq(head(dataRep$timestamps,1),tail(dataRep$timestamps,1),by ="day"))
res <- merge(tstamp,dataRep,by.x="x", by.y="timestamps", all.x=TRUE)
tsData <-xts(res$lst,order.by =res$x)

现在,我想将我的 tsData 应用于 decompose() 或 slt(),但它不起作用,并且出现以下错误。

xts.stl <- stl(tsData,s.window="periodic")

错误:na.fail.default(as.ts(x)) 中的错误:对象中缺少值

decompose(as.ts(tsData))

错误:分解中的错误(as.ts(tsData)):时间序列没有或少于 2 个周期

有人可以帮我吗?

标签: rtime-seriesdecompositionstl-decomposition

解决方案


推荐阅读