1)берем исходные данные (X)

2)находим от них корреляционную матрицу (R)

3)находим собственные значения
2,2588028617938E-11
3,00974370200233E-10
1,60828710075361
2,39171289892283
4) правилом Кайзера или правилом "сломанной трости" отбираем только значимые собственные значения и расставляем их в порядке убывания
2,39171289892283
1,60828710075361
5)находим собственные вектора




6) находим факторные нагрузки (loadings), перемножив каждый собственный вектор на корень из соответствующего собственного значения

7) остается найти scores.
Итак:
Умножаем исходную матрицу

на транспонированную к матрице собственных векторов (

)
Это (

)

умножаем на (

)

получаем такую матрицу

:

теперь ее надо разделить на матрицу корней из с.з.

, то есть домножить на обратную матрицу

матрица корней с.з.

, как понимаю, имеет следующий вид

обратная ей

:

теперь перемножаем

на

получается

это и есть scores?
просто дело в том, что я запускаю PCA анализ через плагин к excel (xlstats), который выводит совсем другую матрицу счетов scores

в настройках анализа можно задавать PCA type: pearson(n),pearson(n-1),spearman,covariance(n),covariance(n-1) и т.д.
я выбираю pearson(n). и я не могу понять откуда там берутся такие значения, как такое подсчиталось
ПРИЧЕМ! абсолютно все предыдущие пункты (корреляционная матрицы, с.з, с.в.,матрица нагрузок) высчитываются аналогично - все значения полностью совпадают с моими рассчетами. а аналогичную матрицу счетов я получить никак не могу.
Ответ который выводит xlstats явно верный, так как если поулченную из него матрицу транспонировать (

) и умножить на нетранспонированную (

), а затем разделить каждый полученный элемент на n (n=3, так как в исходных данных 3 строки), то у нас получается диагональная матрица собственных значений, как и должно быть по формулам.
это значит, что я что-то делаю неверно