This question already has an answer here:

I am comparing eigenvectors generated from mathematica to matllab. It seems signage of eigenvector generated from Mathematica is opposite from what is generated from matlab. Can anybody review and opine where I am going wrong please?

{vals1, vecs1} = Eigensystem[N[{{1, 0.6, 0.3}, {0.6, 1, 0.5}, {0.3, 

{{1.94378, 0.706878, 0.349341}, 
{{-0.569985, -0.63719, -0.518754},   
{-0.609114,-0.0960482, 0.787245}, 
{0.55145, -0.764698, 0.333376}}}

marked as duplicate by Jens, MarcoB, Sjoerd C. de Vries, m_goldberg, Szabolcs Jul 12 '15 at 11:57

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 1
    $\begingroup$ You're aware that if $\mathbf x$ is an eigenvector of $\mathbf A$, then $c\mathbf x$ is also an eigenvector, for nonzero $c$? $\endgroup$ – J. M. is away Jul 12 '15 at 3:31
  • $\begingroup$ yes. I am using the vectors and values to generate correlated random no. If I use different signage my simulated dataset will have opposite correlation from the historical data set. so not sure of I am using vectors with correct signage. $\endgroup$ – Kausik Jul 12 '15 at 3:58
  • $\begingroup$ My point is that even if two different programs both give normalized eigenvectors of a symmetric matrix, don't count on the signs of one agreeing with the signs of another. You need some constraint that will determine the right signs in your application. $\endgroup$ – J. M. is away Jul 12 '15 at 4:34
  • $\begingroup$ Thanks for answers. Very helpful $\endgroup$ – Kausik Jul 13 '15 at 19:36