[英]How do I create an moving average model in R?
我正在對某個數據集進行分析,在查看數據時,我注意到 PACF 沒有任何重要的值(當然除了第一個),而自相關函數 (ACF) 的值大部分都很重要。 所以,我決定創建一個 MA model(因為 ACF 的值很重要),但是我不確定如何在 R 中執行此操作,以及如何確定 Z05B8C7352706FFB2F4DE4C1 的大小。
下面的就夠了嗎?
arima(time-series_object, order = c(0,0,1))
同樣,給定一個 ACF 圖,我們應該如何決定我們應該使用什么 MA(例如 (0,0,1)、(0,1,1) 等)?
在 R 中創建移動平均線的方法有很多,我個人總是使用filter()
在普通的 R 中做到這一點,只是因為我看到了正在發生的事情。 假設您的數據存儲在兩個向量x <- 1:100
和y <- sin(x/10) + rnorm(100,sd=.1)
中。
如果 window 長度為 10,則移動平均計算的一種方法是平均當前值及其 9 個先前值:
f <- rep(1/10, 10)
z <- filter(y, f, sides=1)
現在,您的平滑值為z
。 您將看到z
從 9 個NA
值開始,因為前 9 個步驟您還沒有足夠的值來平均。
擁有一個最小的可重現數據集將有助於回答您問題的第二部分:
[如何] 我們決定 [...] 我們應該使用什么 MA(例如
(0,0,1), (0,1,1)
等)?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.