Для этого я использую данные о банкноте в R, заданные как data(banknote)
, которые показывают измерения 200 швейцарских банкнот. Моя матрица данных называется X
, и я выполнил PCA pca.banknote<-prcomp(X)
.
Я пытаюсь показать, что внутреннее произведение между каждым наблюдением X[i,]
и нагрузкой на главный компонент 3, заданное pca.banknote$rot[,3]
, совпадает с результатами 3-го ПК, заданными pca.banknote$x[,3]
.
Я попытался:
all.equal(as.matrix(X[,])%*%banknote.pca$rot[,3], as.matrix(banknote.pca$x[,3]), check.attributes=FALSE)
но это просто дает среднюю разницу 1, т. Е. Они не равны.
Нужно ли менять формат одного из них на векторный / фрейм данных и т. Д., Чтобы это работало? Или вообще есть идеи относительно того, где проблема?
Любая обратная связь будет принята с благодарностью. Благодаря.