从每周时间序列数据中删除季节性

数据挖掘 r 时间序列
2022-02-16 16:13:26

我需要分解一个系列来消除季节性。该系列有 2 列日期和卷。

这是我的时间序列对象的样子:

salestsDec <- ts(salests, frequency=52, start=c(2010, 1), end=c(2014,12))

我在decompose()“ts”对象上运行该函数。

salests = sales[, c(1,6)]
View(salests)
salestsDec <- ts(salests, frequency=52, start=c(2010, 1), end=c(2014,12))
salestsDec <- decompose(salestsDec, type=c("additive"))
plot(salestsDec)

运行该decompose()函数后,我得到一个包含 6 个组件的列表,包括日期和数量的观察、趋势、季节性、随机。我应该只在我的情节中看到、观察、趋势、季节性和随机分量。

我附上了情节的样子。

此外,当我尝试从系列中删除季节性成分时,我收到了一个错误。看来这是相同的根本问题。

错误:

销售错误 - salestsDec$seasonal:二进制运算符的非数字参数另外:警告消息:“-”的方法不兼容(“Ops.data.frame”,“Ops.ts”)

运行 decomposed() 后的时间序列分量图

1个回答

我无法复制(没有数据),但据我所知,您正在尝试将分解函数应用于整个对象 - 它可能需要一个向量,但接收到一个类似数据框的对象并尝试将分解应用于两列。要么使用不将时间戳存储为列的不同时间序列包(如动物园),要么将分解显式应用于 salestsDec[,2]。