Как вычислить взаимную корреляцию для всех возможных временных задержек в R? - PullRequest
0 голосов
/ 15 апреля 2019

Я хочу вычислить взаимную корреляцию между двумя временными рядами следующим образом:

x <- data.frame("time" = 1:4, "value" =  c(6,2,3,1))
y <- data.frame("time" = 1:14, "value" = c(3,8,4,5,10,7,4,6,3,5,8,11,9,7))

ccf(x$value, y$value, lag.max = 14, plot = F)

Результат:

    -3     -2     -1      0      1      2      3 
 0.000 -0.214  0.714 -0.643  0.286 -0.429  0.286 

Как видите, ccf просто рассмотримзапаздывает от -3 до 3, даже если я указываю максимальное запаздывание 14, поскольку длина x равна 4. На самом деле, она не сдвигается x более чем на 3 секунды вправо и не вычисляет корреляцию для времениотстает более 3 секунд.Однако я также хочу вычислить взаимную корреляцию для временных задержек более 3 секунд, например:

    -3     -2     -1      0      1      2      3      4      5    ...    14
 0.000 -0.214  0.714 -0.643  0.286 -0.429  0.286 

Как я могу это сделать?

...