找到给定特征值R的特征向量

时间:2013-05-20 14:25:03

标签: r eigenvector eigenvalue

我有一个矩阵100x100,我发现它是最大的特征值。现在我需要找到对应于这个特征值的特征向量。我怎么能这样做?

2 个答案:

答案 0 :(得分:9)

eigen功能无法满足您的需求?

> B <- matrix(1:9, 3)
> eigen(B)
$values
[1]  1.611684e+01 -1.116844e+00 -4.054214e-16

$vectors
           [,1]       [,2]       [,3]
[1,] -0.4645473 -0.8829060  0.4082483
[2,] -0.5707955 -0.2395204 -0.8164966
[3,] -0.6770438  0.4038651  0.4082483

答案 1 :(得分:3)

阅读$vectors所针对的特征函数状态的实际帮助: “a p * p 矩阵,其列包含x的特征向量。” 对应于最大特征值的实际向量是$vectors的第1列。 直接得到它:

> B <- matrix(1:9, 3)
> eig <- eigen(B)
> eig$vectors[,which.max(eig$values)]
[1] -0.4645473 -0.5707955 -0.6770438
# equivalent to: 
> eig$vectors[,1]
[1] -0.4645473 -0.5707955 -0.6770438

请注意,@ user2080209的答案不起作用:它将返回第一行。