Как выполнить коинтеграционный тест Йохансена для двух переменных, занимающих несколько строк одновременно? - PullRequest
0 голосов
/ 29 января 2019

Я хочу протестировать коинтеграцию между двумя временными рядами, используя тест Йохансена.Я хочу выполнить тест постепенно, сначала 120 наблюдений, затем 1 сверху и добавление 1 снизу для 2250 наблюдений.Я хочу автоматизировать это с помощью цикла For, но код выдает ошибку.Пожалуйста, помогите.

library(urca)
x= BDICOM$BDI
y= BDICOM$Soybn
for(i in 1:2666){
A = x[i:i+120]; B = y[i:i+120]
jocot[i] = ca.jo(data.frame(A,B), type = "eigen", ecdet = "none",K = 2, spec = "longrun");i=i+1
}

1 Ответ

0 голосов
/ 29 января 2019

Попробуйте, но без выборки ваших данных я не могу быть уверен, что это правильно:

library(urca)

x = BDICOM$BDI
y = BDICOM$Soybn

jocot <- vector('numeric', (2000-120))
for(i in 1:(2000-120)){
  A = x[i:(i+120)]
  B = y[i:(i+120)]
  jocot[i] = ca.jo(
    data.frame(A, B),
    type = "eigen",
    ecdet = "none",
    K = 2,
    spec = "longrun"
  )@teststat[2]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...