[R]固有値と固有ベクトルを求める
eigen関数を使う。戻り値はリストで、valuesに固有値が、vectorsにその固有値に対応する固有ベクトルが含まれる。
> mxaa <- matrix(c(3, 1, 1, 1, 2, 0, 1, 0, 2), nrow = 3)
> print(mxaa)
[,1] [,2] [,3]
[1,] 3 1 1
[2,] 1 2 0
[3,] 1 0 2
> lam <- eigen(mxaa)
> print(lam)
eigen() decomposition
$values
[1] 4 2 1
$vectors
[,1] [,2] [,3]
[1,] 0.8164966 0.0000000 0.5773503
[2,] 0.4082483 -0.7071068 -0.5773503
[3,] 0.4082483 0.7071068 -0.5773503
この例では固有値と固有ベクトルは3つあり、例えば3番目の固有値と固有ベクトルを取り出すには、以下のようにする。
> lam$values[3]
[1] 1
> lam$vectors[, 3]
[1] 0.5773503 -0.5773503 -0.5773503
« [R]単位行列を作る | トップページ | [Octave]固有値と固有ベクトルを求める »
「R(行列)」カテゴリの記事
- [R]前進代入法で連立方程式を解く(2026.03.12)
- [R]相関行列を求める(2026.03.08)
- [R]LU分解を行う(2026.02.27)
- [R]下三角行列を作成する(2026.02.25)
- [R]上三角行列を作成する(2026.02.24)

コメント