我有一个 100x100 的矩阵,我发现它是最大的特征值。现在我需要找到这个特征值对应的特征向量。我怎样才能做到这一点?
问问题
13465 次
2 回答
11
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
于 2013-05-20T14:27:48.343 回答
3
阅读特征函数状态的实际帮助 $vectors
是:“一个p*p矩阵,其列包含 x 的特征向量。” 最大特征值对应的实际向量是 的第 1 列$vectors
。直接获取:
> 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 的答案不起作用:它将返回第一行。
于 2014-03-10T15:27:47.050 回答