I was wondering whether it makes sense to do PCA after robust PCA. Suppose I have a matrix $X$ and if I do robust PCA I would get:


And if I do PCA over $A$ would this make sense as a preprocessing step? The matrix $X$ is highly sparse (less than 10% is populated, with a size of 15K by 20K).

An introduction to robust PCA, if more specific details are needed: I would like to use the inexact ALM method to do this.

My objective is to reduce the dimensionality of $X$, but it contains some extreme outliers.

  • 4
    $\begingroup$ Robust PCA of Candes et al. decomposes matrix $X$ into matrix $A$ that has low rank (and is not sparse) and a matrix $E$ that is sparse (and is not low rank). So $A$ is supposed to be low rank. What's the point of another PCA step then? You did not specify what is the goal of your analysis; what is it supposed to be a preprocessing step for? Apart from that, I am not sure that robust PCA makes sense when $X$ is sparse; it is based on the assumption that $A$ is non-sparse and low rank, hence it seems to me that $X$ is supposed to be a dense matrix for robust PCA to make sense. $\endgroup$
    – amoeba
    Aug 13, 2015 at 13:26

1 Answer 1


Yes, it makes sense.

Classical PCA is highly sensitive to outliers. By using robust PCA, you can identify these outliers and get rid of them.

About Classical PCA:

  • PCA is sensitive to outliers
  • PCA does not require distributional assumptions
  • PCA only considers orthogonal transformations (rotations) of the original variables)
  • Dimension reduction can only be achieved if the original variables were correlated. Otherwise, PCA is only re-ordering them according to their variance!!!
  • PCA is not scale invariant. Often (but not always) scaling is preferred.

Your Answer

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

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