I'm familiar with using insights from Random Matrix Theory to determine the number of principal components from the PCA of a covariance/correlation matrix to use to form factors.

If the eigenvalue associated with the first PC is large, then it means that the remaining eigenvalues must be small (since the sum of the eigenvalues must equal the trace of the correlation matrix). When the first PC is large enough, it is thus possible that all of these eigenvalues are below the lower bounds on the Marcenko-Pastur distribution. This makes sense that they are low not because of random chance, but because the first eigenvalue is very large. However, that does not mean that they contain significant information. Rather, it would make sense to instead ask the question "given the first PC is some large number, what would the distribution of the remaining eigenvalues look like if random data were responsible for them?"

Is there any research that addresses this issue? If it is possible to get the Marcenko-Pastur distribution conditional on knowing one or more eigenvalues, then it would be possible to proceed iteratively to determine whether the factors reflect significant information.

  • $\begingroup$ Are you speaking just of one-factor random data (random spheroid)? $\endgroup$
    – ttnphns
    Feb 5, 2013 at 20:22
  • $\begingroup$ Not sure what you mean by random spheroid, but generally there could be more than one factor to test. I had worked it out so that the conditional eigenvalue problem can be written as $eig(\Sigma(I-\beta\beta')'(I-\beta\beta'))$, where $\beta$ are the eigenvectors associated with the $n$ largest eigenvalues, but what I could find as the inequalities that bind the eigenvalues of the product of two matrices seemed rather wide. $\endgroup$
    – John
    Feb 5, 2013 at 20:39
  • $\begingroup$ Thinking it through for a second, I think I got the correct results. $\widetilde{\lambda}\pm=\left(1+\frac{1}{Q}\pm2\sqrt{\frac{1}{Q}}\right)\left( \sum_{i=1}^{n}\lambda_{i}-\sum_{j=1}^{J}\lambda_{j}\right)/n $ $\endgroup$
    – John
    Feb 5, 2013 at 20:49

1 Answer 1


Here is a document about your issue: http://math.nyu.edu/faculty/avellane/LalouxPCA.pdf

The idea is simple, you calculate the Marcenko-Pastur distribution with a modified variance of the elements of the matrix. The modified variance simply correspond to the variance explained by other eigenvalue than the first one.

As said by john, you have to replace $\sigma^2$ by $(\sum_{i=1}^{n}\lambda_{i}-\sum_{j=1}^{J}\lambda_{j})/n$ for the first $J$ eigenvalues. If you have normalized your problem and you only want to remove the first component, you have to replace $\sigma^2$ by $\frac{1-\lambda_{1}}{n}$. You will obtain:

$$ \rho'(\lambda)= \frac{nQ}{2\pi(1-\lambda_{1})}(\frac{\sqrt{(\lambda_{max}-\lambda)(\lambda-\lambda_{min})}}{\lambda}) $$


$$ \lambda_{min/max}= \frac{n}{(1-\lambda_{1})}(1+\frac{1}{Q}\pm2\sqrt{\frac{1}{Q}}) $$

As there is probably more information in your matrix than just one big eigenvalue and noise, you will observe some difference. For exemple in market correlation studies we can observe a leakage of the eigenvalues by the upper edge of the spectrum. (It corresponds to financial sectors).

Another approach mentioned in the document is to consider $\sigma^2$ as a single parameter in the marcenko pastur distribution. You then have to adjust this parameter to fit your curve.

For more information useful techniques and references, you can take a look at: http://arxiv.org/abs/physics/0507111

  • $\begingroup$ This formula also needs to revise Q as the number of columns has reduced by 1. $\endgroup$
    – Kumar
    Jul 9, 2015 at 23:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.