2010-08-07 7 views
2

Comment R représente-t-il des vecteurs propres complexes? Par exemple:vecteurs propres complexes

> eigen(matrix(c(2,1,0,2),2,2)) 
$values 
[1] 2 2 
$vectors 
[,1]   [,2] 
[1,] 0 4.440892e-16 
[2,] 1 -1.000000e+00 

Ceci n'indique pas que le vecteur propre est complexe. Alors, comment puis-je déterminer si eigenvector retourné par R est réel ou non?

Répondre

4

Dans votre exemple de matrice, les vecteurs propres/valeurs propres sont tous réels. Voici un exemple de nombres complexes:

R> eigen(matrix(runif(16),4,4)) 
$values 
[1] 1.5121+0.0000i -0.3047+0.2981i -0.3047-0.2981i -0.1300+0.0000i 

$vectors 
      [,1]   [,2]   [,3]  [,4] 
[1,] 0.4991+0i -0.5511+0.0000i -0.5511+0.0000i -0.2186+0i 
[2,] 0.6880+0i 0.2158+0.4949i 0.2158-0.4949i -0.8228+0i 
[3,] 0.4389+0i 0.4253+0.1411i 0.4253-0.1411i 0.5096+0i 
[4,] 0.2914+0i -0.0639-0.4471i -0.0639+0.4471i 0.1249+0i 

Vous pouvez toujours vérifier le nombre complexe en utilisant:

R> is.complex(1+2i) 
[1] TRUE