У меня есть большой объект XTS, который является результатом расчета корреляции с использованием скользящего окна в объекте XTS ZOO из 12 x 12 переменных для 1343 точек данных во времени.
Мой большой объект XTS структурирован следующим образом: строки представляют время, а столбцы представляют комбинации корреляций. Упрощенный пример показан ниже:
AA BA CA AB BB CB AC BC CC
t1 1 .1 -.4 .1 1 .3 -.4 .3 1
t2 1 .4 .8 .4 1 .2 .8 .2 1
t3 1 .5 .5 .5 1 .3 .5 .3 1
t4 1 .6 .1 .6 1 .7 .1 .7 .1
Поправьте меня, если я ошибаюсь, но я считаю, что функция eigen()
в R требует квадратной матрицы для вычисления собственных значений матрицы лямбда 1,2 и 3?
Как я могу возвести в квадрат объект xts выше, чтобы найти собственные значения и векторы с каждой матрицей во времени?
Я предполагаю, что у меня будет матрица для каждого периода времени (1-4) в объекте XTS выше, и матрица должна быть построена, взяв первые 3 значения (1.1-.4) и поместив их в первый столбец, снова следующие три значения (.1 1 .3), и это идет во второй столбец, и, наконец, последние три значения строки один (-.4 .3 1) идут в последний столбец, чтобы составить 3 x 3 матрица, показанная ниже:
матрица для t1
A B C
A 1 .1 -.4
B .1 1 .3
C -.4 .3 1
Возможно, преобразование из объекта XTS не требуется для вычисления собственных значений, но если я пройдусь по нему в уме, это будут шаги, необходимые для вычисления собственных значений для моего объекта XTS.
В идеале собственные значения из каждой матрицы затем будут храниться в фрейме данных или матрице, в приведенном выше случае у меня будет фрейм данных из 12 наблюдений за 3 переменными или матрица 3 x 4.
Может ли кто-нибудь сказать мне, если я делаю это неправильно, и может ли eigen()
взять объект XTS в его текущей форме и вычислить собственные значения?