使用主成分分析查找特征向量

Posted

技术标签:

【中文标题】使用主成分分析查找特征向量【英文标题】:Find eigen vectors Using Principal Component Analysis 【发布时间】:2013-10-21 12:57:10 【问题描述】:

我们需要使用 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

如何得到上述特征向量

【问题讨论】:

如果您觉得我已经回答了您的问题,那么最好通过单击我的答案旁边的勾号来标记已回答的问题。谢谢。 【参考方案1】:

返回的主成分系数是数据协方差矩阵的有效特征向量矩阵。特征向量仅在正交变换之前是唯一的。有关更详细的讨论,请参阅我对较早的 SO 问题 here 的回答。

在这种特殊情况下,获得矩阵之间完全相等的适当正交变换是将 PC 系数矩阵乘以:[0 1; -1 0]

【讨论】:

以上是关于使用主成分分析查找特征向量的主要内容,如果未能解决你的问题,请参考以下文章

主成分分析(PCA),用Matlab和SAS、SPSS结果不一样,后二者一样。但三者的特征值一样,特征向量正负不一

我想问关于主成分分析法的计算中,需要求特征值,特征向量,但是求它们的原因是啥?

主成分分析(PCA)简介

主成成分分析(PCA)

多元统计分析-主成分分析

Python遥感数据主成分分析