[Math] Correct way to calculate a matrix trace with negative values

linear algebramatricestrace

I have a 10×10 symmetrical variance-covariance matrix, such that the variances for 10 vectors are on the main diagonal and the covariance between all vectors are on the off-diagonals.

I want to quantify the amount of variance in total. I can easily take the matrix trace as the sum of the eigenvalues on the main diagonal.

However, the matrix can be split into meaningful (biologically meaningful, in my case) sub-matrices: 4 submatrices, 5×5 each, in each corner of the original matrix. If I then want to quantify the variation within each sub-matrix using the matrix trace, I run into some trouble with the top-right/bottom-left sub-matrices. These are formed of covariance estimates and are therefore not necessarily positive. My question is, what is the correct way to calculate the matrix trace here? If I sum the eigenvalues, I will have some negative values subtracting from the total, so should I use absolute values? Is the matrix trace the best method to use here or is there a more appropriate way of summarising the amount of variance in the sub-matrices?

Any guidance would be gratefully received.

Thanks,

Fiona

Best Answer

The matrix trace of the original matrix is the sum of traces of the top-left and bottom-right sub-matrices. The other two doesn't have to preserve any property of the trace of the original matrix. If they have to preserve some properties due to the biological nature of the split and they are not, I would ask about the validity of the estimation. What they do need to preserve can be found at the following link.

Also, not sure, but would some matrix norm help?

If you want something eigenvalues driven choose (assumed $A$ is real valued) $$\|A\|_2=\sqrt{\max_n{\lambda_n(AA^T)}}$$ where $\lambda_n(AA^T)$ denotes the n'th eigenvalue of matrix $AA^T$.