Is it Necessary to De-Mean my Data before Applying PCA, or does pca(X) do that Automatically?
6 views (last 30 days)
Show older comments
Nikitas Provatakis
on 15 Nov 2018
Commented: Nikitas Provatakis
on 19 Nov 2018
I am aware that a first step in performing PCA for dimensionality reduction is de-meaning the data.
I have performed PCA after de-meaning manually with X=X-mean(X) and compared with plainly applying [COEFF,score,latent,~,explained]=pca(X) on my data.
By inspecting the eigenvalues and the percentage of variability described by each PC on both cases (i.e. latent and explained in the above case), I can see that I get two different results. Is manual de-meaning doing too much in this case?
0 Comments
Accepted Answer
the cyclist
on 15 Nov 2018
Edited: the cyclist
on 15 Nov 2018
MATLAB's pca functions definitely de-means. It should make no meaningful difference if you de-mean ahead.
Are you sure you are de-meaning along the correct dimension? You should only de-mean along dimension 1 of your input.
Are you sure you're getting different output, beyond perhaps some floating-point differences (on the order of 1e-15) smaller than the results?
More Answers (0)
See Also
Categories
Find more on Dimensionality Reduction and Feature Extraction in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!