I'm trying to do SVD on the correlation matrix of a panel of 60 samples of 500 random variables. I expect the singular values of the matrix add up to 500.
The problem is that on rare occasions, I get insane singular values: they sum up to over 1000. There are two other clues: 1. If I try different correlation algorithms ... pearson, spearman, etc ... one may work when the other fails. Each of the correlation algorithms seems to produce insane singular values at times. I tried using R and Python correlation libraries 2. If I try dropping one row from the correlation matrix, often times, the singular values become sane again.
The way I'm going around this bug is to find the correlation in different ways till I find one where the Singular values add up to a sane value. I guess I could patch the algorithm to try all possible combinations of algorithms and row exclusions to get a very high probability of getting sane singular values, but I'm hoping there is a method to this madness.