Skip to content
Prev 45024 / 398530 Next

SVD/Eigenvector confusion

On Sun, 29 Feb 2004, Philip Warner wrote:

            
(A %*% t(A) is required, BTW.)  That is not the definition of the SVD.  
It is true that U are eigenvectors of A %*% t(A) and V of t(A) %*% A, but
that does not make them left/right eigenvectors of A (unless that is your
private definition).  Since eigenvectors are not unique, it does mean that
you cannot reverse the process, as you seem to be trying to do.

Eigenvectors are only defined up to a sign (and more if there are 
duplicate eigenvalues) and singular vectors are only defined up to a sign 
(changing both U and V).  You will find both vary by sign depending on the 
exact version of R used (including which BLAS and which compiler 
optimization level).  Singular vectors have unit length, but eigenvectors 
do not have to (although they do in the code you have used).
It is not expected to work.
There is no rule: the SVD is computed by a different algorithm.