В поисках решения моей проблемы я нашел старый пост (Взаимная корреляция различных значений данных временных рядов в R), который спрашивает именно то, что мне нужно, но, к сожалению, не получил никакого ответа, поэтому я спрошу еще раз, надеясь на какое-то руководство.
Я создал большую матрицу из большого количества временных рядов одинакового размера, каждый столбец представляет собой отдельный временной ряд (что-то похожее на следующее, но намного больше и гораздо больше значений, отличных от нуля):
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16] [,17] [,18] [,19]
[1,] 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 NA NA NA 0.0 NA 0.0 0.0 0.0 0.0
[2,] 0 6.0 0.0 9.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[3,] 0 0.0 0.0 5.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[4,] 0 0.0 0.0 10.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[5,] 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[6,] 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[7,] 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[8,] 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 0.0 NA 0.0 0.0 0.0 0.0
[9,] 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 NA 0 NA 10.0 NA 0.0 0.0 0.0 0.0
.
.
.
Я хочу определить корреляцию между всеми временными рядами, я поместил их в матрицу, потому что подумал, что это лучший способ выполнить процедуру кросс-корреляции, я могу ошибаться.
Итак, я также знаю о функциях "ccf" и "diss()":
- ccf() # в базовых пакетах
- diss(meter_daywise,METHOD = "CORT",deltamethod = "DTW")# в пакете TSclust
но, как и в старом посте, у меня те же проблемы:
- ccf не принимает полную матрицу в качестве входных данных
- diss() принимает входную матрицу и создает некоторую матрицу, но, наблюдая за значениями, я обнаруживаю, что это не матрица взаимной корреляции, поскольку значения не находятся между -1 и 1.
Итак, вопрос в том, как мы вычисляем и выполняем взаимную корреляцию между различными временными рядами в R?
cor(myMat)
. - person lmo   schedule 18.05.2017