我们需要使用 PCA 找到特征向量。我们正在使用 princomp ( 矩阵 )。这给出了主成分系数、转换数据和特征值。
对于以下数据:
2.5 2.4
0.5 0.7
2.2 2.9
1.9 2.2
3.1 3
2.3 2.7
2 1.6
1 1.1
1.5 1.6
1.1 0.9
function PCAFinder(filein)
X = csvread(filein);
[pc,score,latent] = princomp(X);
pc
transpose(pc)
end
上述代码返回的主成分系数 (pc)
0.6779 0.7352
0.7352 -0.6779
要产生的实际特征向量:
-0.7352 -0.6779
0.6779 -0.7352
如何获取上述特征向量
返回的主成分系数是数据协方差矩阵的有效特征向量矩阵。特征向量仅在正交变换之前是唯一的。有关更详细的讨论,请参阅我对旧SO问题的回答 此处.
在这种特殊情况下,获得矩阵之间精确相等的适当正交变换是将 PC 系数矩阵乘以: [0 1; -1 0]