《時間序列分析及應用:R語言》讀書筆記--第一章 引論


“春節假期是難得的讀書充電的時間。”--來自某boss。假期能寫多少算多少,一個是題目中的這本書,另一個是《python核心編程》中的高級部分,再一個是拖着的《算法導論》。

------------------------------------------------------

一、時間序列研究目的主要有兩個:認識產生觀測序列的隨機機制,即建立數據生成模型;基於序列的歷史數據,也許還要考慮其他相關序列或者因素,對序列未來的可能取值給出預測或者預報。通常我們不能假定觀測值獨立取自同一總體,時間序列分析的要點是研究具有相關性質的模型。

二、下面是書上的幾個例子

1、洛杉磯年降水量

問題:用前一年的降水量預測下一年的降水量。

第一幅圖是降水量隨時間的變化圖;第二幅圖是當年降水量與去年降水量散點圖。

win.graph(width=4.875, height=2.5,pointsize=8)  #這里可以獨立彈出窗口
data(larain)  #TSA包中的數據集,洛杉磯年降水量
plot(larain,ylab='Inches',xlab='Year',type = 'o')   #type規定了在每個點處標記一下

win.graph(width = 3,height = 3,pointsize = 8)
plot(y = larain,x = zlag(larain),ylab = 'Inches',xlab = 'Previous Year Inches')#zlag函數(TSA包)用來計算一個向量的延遲,默認為1,首項為NA

FTOFXN4I7OHLB[FC%PDR0BE

image

從第二幅圖看出,前一年的降水量與下一年並沒有什么特殊關系。

2、化工過程

win.graph(width = 4.875,height = 2.5,pointsize = 8)
data(color)
plot(color,ylab = 'Color Property',xlab = 'Batch',type = 'o')

win.graph(width = 3,height = 3,pointsize = 8)
plot(y = color,x = zlag(color),ylab = 'Color Property',xlab = 'Previous Batch Color Property')
len <- length(color)
cor(color[2:len],zlag(color)[2:len])#相關系數
>0.5549

第一幅圖是顏色屬性隨着批次的變化情況。

image

第二幅圖畫一下前一批次與本批次是散點圖。

image

上面的圖顯示了稍微向上的趨勢,即數值較大的后一批次也趨向於更大的數值。但是並不明顯,相掛系數只有0.5549.

3、加拿大野兔年豐度

win.graph(width=4.875, height=2.5,pointsize=8)
data(hare)
plot(hare,ylab='Abundance',xlab='Year',type='o')

win.graph(width=3, height=3,pointsize=8)
plot(y=hare,x=zlag(hare),ylab='Abundance',xlab='Previous Year Abundance')
len <- length(hare)
cor(hare[2:len],zlag(hare)[2:len])
>0.7026

看一下下面的圖,明顯有周期性質。

image

image

上面的圖看出前一年的數值跟本年度數值相關關系較大。相關系數為0.7026.

4、艾奧瓦州迪比克市月平均氣溫

image

非常明顯的周期性。季節性模式。

5、濾油器月銷售量

win.graph(width=4.875, height=2.5,pointsize=8)
data(oilfilters)
plot(oilfilters,type='o',ylab='Sales')

win.graph(width=4.875, height=2.5,pointsize=8)
plot(oilfilters,type='l',ylab='Sales')
Month=c("J","A","S","O","N","D","J","F","M","A","M","J")#注意這里是從1983年7月到1987年6月
points(oilfilters,pch=Month)

plot(oilfilters,type='l',ylab='Sales')
points(y=oilfilters,x=time(oilfilters),pch=as.vector(season(oilfilters)))#這里的season函數的返回值取決於傳入數值

“向作者提供數據時,經理說沒有理由認為銷售量存在季節性。”“假如各年1月與1月的數據之間存在關聯趨勢,2月與2月的數據之間存在關聯趨勢,那么就有季節性。”

image

上面的圖作者說沒有顯示明顯的季節性。其實……還好,季節性比較明顯了已經。

image

在加上月份的標識之后,確實比原來更能顯示出季節性規律。

總之,恰當和有益於發現特定模式的繪圖方法,有利於找到符合時間序列數據的合適模型。

三、建模策略

給時間序列尋找合適的模型並非易事,多步建模策略很有用,包括三個可反復使用的主要步驟:

1、模型識別

2、模型擬合

3、模型診斷

模型識別就是在時間序列模型類中選擇適合觀測值的模型。進一步可以觀察時間序列圖,計算一些統計量。選取的模型是有待考證的,選取原則是能表示模型的前提下選取參數少的。

第二步就是用數據將將選取模型中的參數估計出來,估計方法是最小二乘揮着極大似然。

最后就是對模型進行質量評估。針對一些問題對模型進行估計,看模型是否合理:比如模型對數據的擬合程度有多好,模型前提是否滿足等。如果沒有不足之處,就可以進行預測等任務,如果有不足之處,針對不足之處尋找其他模型,再進行上面三個步驟。

四、歷史上的時間序列圖

名言:“時間序列圖是圖形設計最常用的形式,其一個維度沿着秒、分、時、日、周、月、年、乃至千年等規則的時間節律延伸,時間標度的自然順序賦予了這種設計以解釋的力量和效率,這一點在其他圖形設計上了無痕跡。”


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM