A Consistently Oriented Basis for Eigenanalysis: Improved Directional Statistics
Jay Damask
TL;DR
This work tackles consistent orientation of eigenbases produced by $V$ from SVD/eigendecompositions, enabling robust directional statistics by embedding the rotation into a near-identity matrix $\\mathcal{V} = V S$. It introduces a modified arctan2-based method that allows $N-1$ rotation angles to span a full $2\\pi$ range, delaying reflections to the last irreducible subspace and using a cascade of Givens rotations. The approach yields a trade-off with the original arcsin method, offering improved angular disambiguation for time-evolving systems and better interpretability for directionality analyses, with distinct use cases for regression versus directional statistics. Empirical validation on financial data demonstrates that unwrapping angular wrap-around aligns informative eigenmodes with Random Matrix Theory predictions and enables both dynamic and static stabilization of eigenvectors, contributing practical tools for eigenvector analysis and correlation matrix cleaning. The work is implemented in the thucyd package and connected to broader themes in random matrix theory, including MP distributions and eigenvector stability, with clear guidance for practitioners on when to apply arcsin versus modified arctan2.
Abstract
The algorithm derived in this article, which builds upon the original paper, takes a holistic view of the handedness of an orthonormal eigenvector matrix so as to transfer what would have been labeled as a reflection in the original algorithm into a rotation through a major arc in the new algorithm. In so doing, the angular wrap-around on the interval π that exists in the original is extended to a 2π interval for primary rotations, which in turn provides clean directional statistics. The modified algorithm is detailed in this article and an empirical example is shown. The empirical example is analyzed in the context of random matrix theory, after which two methods are discussed to stabilize eigenvector pointing directions as they evolve in time. The thucyd Python package and source code, reported in the original paper, has been updated to include the new algorithm and is freely available.
