MA, используя вывод DLM

Я указал многомерную модель MA(1) в State-Space для использования пакета DLM. У меня есть 4 переменных наблюдения и мой dlmModARMA функция выглядит

TestAR <- function(parm){
  noCols = noCols

  maCoeff = matrix(parm[1],noCols,noCols)
  maCoeff = diag(parm[2:(noCols+1)])

  modelTemp = dlmModARMA(ma = list(maCoeff),
                         dV = c(parm[(noCols+2):(noCols+noCols+1)]),
                         sigma2 = diag(noCols)
                         )
  return(modelTemp)

}

Затем я вызываю функцию и пропускаю ее через фильтр Калмана.

initials = c(0.1, rep(0.9,noCols),rep(0.1,noCols))
  fit = dlmMLE(yf, parm = initials, build = TestAR,
               hessian = TRUE, 
               control = list(maxit = 1000)
               )
modelEst = buildConstantLocalLevel(fit$par)
kalFilter = dlmFilter(yf, modelEst)

Мой вопрос в том, что м выход из dlmFilter n на 8 вместо n на 4. Первые 4 переменные близко повторяют наблюдаемые данные, а следующие 4 - разные. Почему я получаю 8 отфильтрованных переменных вместо 4?

Я подозреваю, что первые 4 - это переменные состояния, а вторые 4 - ошибки e(t-1)?

0 ответов

Другие вопросы по тегам