Is it Necessary to De-Mean my Data before Applying PCA, or does pca(X) do that Automatically?

6 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

the cyclist
the cyclist il 15 Nov 2018
Modificato: the cyclist il 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?

Più risposte (0)

Categorie

Scopri di più su Dimensionality Reduction and Feature Extraction in Help Center e File Exchange

Prodotti


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by