在Python中,我已经计算了数据矩阵X
至eig()
的特征向量和特征值。我正在寻找数据的前2个主要成分(U = [u1 u2])。我知道前2个成分是与2个最大特征值相对应的2个特征向量,但是我不确定如何使用手边的数据(特征值,特征向量和X)来计算该信息。
计算出的特征向量和特征值:
Eigenvectors = [[-0.68065502 -0.72805308 -0.08153196]
[-0.71680551 0.68482721 -0.13115467]
[-0.15132287 0.03082853 0.98800354]]
Eigenvalues = [2.84217094e-14 2.15257831e+02 8.95193455e+02]
答案 0 :(得分:0)
给出您获得的Eigenvalues = [2.84217094e-14 2.15257831e+02 8.95193455e+02]
特征值
您的两个最大特征值是8.95193455e+02 and 2.15257831e+02
,
您的特征值之和为1110.0
,对应于100%的信息。
因此,最大的特征值8.95193455e+02
拥有80.6%的信息。第二个特征值2.15257831e+02
拥有剩余的19.4%信息,最后一个特征值2.84217094e-14
太小,因此可以认为是噪声。
对于与这些特征值匹配的特征向量,Eigenvectors
矩阵的每一列都与一个特征值相关联,并且它们的顺序相同。
例如,您的第一个特征值8.95193455e+02
与特征向量相关联
[[-0.08153196]
[-0.13115467]
[ 0.98800354]]