開始使用免費開始

差分

就像影片所示,當時間序列是趨勢平穩(trend stationary)時,它會圍繞某個趨勢呈現平穩行為。最簡單的例子是 $Y_t = \alpha + \beta t + X_t$,其中 \(X_t\) 是平穩的。

另一種描述趨勢的模型是隨機漫步(random walk),形式為 $X_t = X_{t-1} + W_t$,其中 \(W_t\) 是白雜訊。之所以稱為隨機漫步,是因為在時間點 $t$,此過程等於時間點 \(t-1\) 的位置再加上一個完全隨機的變動。對於具有漂移的隨機漫步(random walk with drift),在模型中加入常數項,會使路徑沿著漂移方向(正向或負向)逐漸偏移。

我們已經從這些模型模擬並繪製了資料。請注意兩種模型行為上的差異。

在這兩種情況下,透過簡單的差分(differencing)即可去除趨勢,並讓資料更接近平穩。差分會比較某一時間點與其前一時間點的值之差,也就是計算 $X_t - X_{t-1}$。

為了檢查是否奏效,你將對每個產生的時間序列做差分,並繪製去趨勢後的序列。若時間序列存在於 x,則 diff(x) 會回傳透過差分取得的去趨勢序列。要繪製去趨勢序列,只要使用 plot(diff(x))

本練習屬於課程

R 中的 ARIMA 模型

檢視課程

練習說明

  • 請用一行程式碼,將 diff() 巢狀在 plot() 中,對 y 這個趨勢平穩資料做差分並繪圖。結果看起來平穩嗎?
  • x 做相同的動作。結果看起來平穩嗎?

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Plot detrended y (trend stationary)


# Plot detrended x (random walk)

編輯並執行程式碼