Почему собственные значения eig() сортируются по возрастанию?

Я пытаюсь найти собственные значения матрицы с eig. Я определяю матрицу с примерными данными:

A = magic(5)

A =

17    24     1     8    15
23     5     7    14    16
 4     6    13    20    22
10    12    19    21     3
11    18    25     2     9

а также

D = eig(A,'matrix')

D =


65.0000  0  0  0  0

0  -21.2768         0         0         0

0  0  -13.1263         0         0

0         0         0   21.2768         0

0         0         0         0   13.1263

Но если я использую

C = cov(A)

и получить собственные значения из ковариационной матрицы, вот результат:

DC = eig(C,'matrix')

DC =


        -0.0000         0         0         0         0

         0   35.4072         0         0         0

         0         0   44.9139         0         0

         0         0         0  117.5861         0

         0         0         0         0  127.0928

Почему собственные значения ковариационной матрицы отсортированы по возрастанию?


person Wanarase Cs Sinhashthita    schedule 27.11.2018    source источник
comment
Связано. Дублировать?   -  person Luis Mendo    schedule 27.11.2018


Ответы (1)


Сортировка — это просто выбор удобства. Не существует такой вещи, как «реальное» положение собственного вектора, так же как (x,y) так же допустимо, как (y,x). Поскольку многие матричные методы работают с собственными векторами в порядке убывания собственного значения (т. е. сначала наиболее важные), имеет смысл структурировать их соответствующим образом.

person Adriaan    schedule 27.11.2018