用季節差分去除季節性趨勢
對於具有季節性趨勢的時間序列,可以使用季節差分來移除這些週期性模式。例如,月資料可能呈現明顯的 12 個月週期。在這種情況下,逐年行為的變化可能比逐月變化更值得關注,因為逐月變化多半跟著整體的季節性走勢。
函式 diff(..., lag = s) 會計算相隔 s 期的差分,也就是長度為 s 的季節變化序列。對於月資料或季資料,適合的 s 值分別是 12 或 4。diff() 的預設值是 lag = 1,也就是一階差分。與先前類似,經過季節差分後的序列,觀測數會比原始序列少 s 個。
本練習屬於課程
R 的時間序列分析
練習說明
- 時間序列
x已載入,且如相鄰圖所示,範圍約從 -10 到 +10。請對x套用diff(..., lag = 4),並將結果存為dx。 - 使用
ts.plot()繪製轉換後的序列dx,並留意轉換後資料在垂直方向上的範圍變窄。 - 分別對
x與dx呼叫length(),計算兩者的觀測數。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Generate a diff of x with lag = 4. Save this to dx
dx <-
# Plot dx
# View the length of x and dx, respectively