我正在嘗試使用stl來獲取我的時間序列數據中的季節和趨勢的細分。我有tick數據,並且我創建了一個ts對象。使用時間序列數據繪製stl
我跑了一個SQL查詢來獲取以下表格
> x
datetime price
1 2010-09-08 1501 9110
2 2010-09-08 1501 9110
3 2010-09-08 1501 9110
4 2010-09-08 1501 9110
5 2010-09-08 1501 9115
6 2010-09-08 1501 9115
7 2010-09-08 1501 9110
8 2010-09-08 1502 9115
9 2010-09-08 1502 9115
10 2010-09-08 1502 9115
11 2010-09-08 1503 9120
12 2010-09-08 1503 9115
13 2010-09-08 1503 9115
14 2010-09-08 1503 9115
15 2010-09-08 1503 9115
16 2010-09-08 1503 9115
17 2010-09-08 1503 9115
18 2010-09-08 1503 9115
19 2010-09-08 1503 9115
20 2010-09-08 1503 9115
21 2010-09-08 1503 9115
22 2010-09-08 1503 9110
23 2010-09-08 1503 9105
24 2010-09-08 1503 9105
25 2010-09-08 1503 9110
26 2010-09-08 1504 9110
27 2010-09-08 1504 9110
28 2010-09-08 1504 9110
29 2010-09-08 1504 9110
30 2010-09-08 1504 9115
31 2010-09-08 1504 9115
32 2010-09-08 1504 9115
33 2010-09-08 1504 9115
34 2010-09-08 1504 9115
35 2010-09-08 1504 9115
36 2010-09-08 1504 9115
37 2010-09-08 1504 9120
的數據和我通過運行轉換成TS如下:
> xt<-ts(x[,2])
> xt
Time Series:
Start = 1
End = 37
Frequency = 1
[1] 9110 9110 9110 9110 9115 9115 9110 9115 9115 9115 9120 9115 9115 9115 9115
[16] 9115 9115 9115 9115 9115 9115 9110 9105 9105 9110 9110 9110 9110 9110 9115
[31] 9115 9115 9115 9115 9115 9115 9120
> drg<-stl(log(xt),"per")
Error in stl(log(xt), "per") :
series is not periodic or has less than two periods
> is.ts(xt)
[1] TRUE
我如何能解決任何建議錯誤,能夠看到不同趨勢分量的細分...
我還沒有做很多時間系列的工作,所以只是爲了澄清:是'plot'函數產生錯誤還是'stl'?即,如果你在自己的行上執行'drg < - stl(...)',然後執行'plot(drg)',哪行會拋出錯誤?我的猜測是'plot',或許'drg'不是你所期望的。你能否提供一小部分數據來重現你的問題? – 2012-01-17 01:35:08
stl部分'> drg <-stl(log(xt),「per」) stl(log(xt),「per」)中的錯誤: 系列不是週期性的或者具有少於兩個週期 '我將在短短几分鐘內更新我的帖子,並提供一小段數據樣本 – itcplpl 2012-01-17 01:58:32
剛剛更新後的小數據樣本重現問題 – itcplpl 2012-01-17 02:10:50