我正在尝试分解我的数据以查看趋势和季节性效果。我有4个月的数据,每天记录。数据如下:
date amount
11/1/2000 1700
11/2/2000 11087
11/3/2000 11248
11/4/2000 13336
11/5/2000 18815
11/6/2000 8820
11/7/2000 7687
11/8/2000 5514
11/9/2000 9591
11/10/2000 9676
11/11/2000 14782
11/12/2000 18554
等到2001年2月底。我读了这样的数据并生成了一个时间序列对象:
myvector <- read.table("clipboard", sep="\t", header=T)
myts <- ts(myvector$amount, start=c(2000,11), frequency=52)
我对如何以时间序列对象读取此数据感到困惑。数据每天记录,但如果我使用frequency=365
,请尝试
fit <- stl(myts2, s.window="periodic")
我得到:
Error in stl(myts2, s.window = "periodic") :
series is not periodic or has less than two periods
我找到的每个例子都会使用多年的数据进行对象投射。在我的情况下这不可能吗?
我知道绘制趋势和分解的后续步骤是:
fit <- stl(myts, s.window="periodic")
plot(fit)
答案 0 :(得分:0)
尝试seasonal differencing,这与常规差异相似,但不同时期应用
一个例子:
(function(){
"use strict";
var str = 'Hullo!!!';
str = str.slice(0, 1) + 'e' + str.slice(2);
})();
data(austres)
plot(austres)
seasonal <- diff(austres, lag = 12, differences = 1)
plot(seasonal)
现在你已经把时间序列的季节性成分固定下来了。