Reduce data dimension using PCA

2 visualizaciones (últimos 30 días)
Hg
Hg el 7 de Nov. de 2016
Respondida: Vassilis Papanastasiou el 17 de Dic. de 2021
pca() outputs the coefficient of the variables and principal components of a data. Is there any way to reduce the dimension of the data (340 observations), let say from 1200 dimension to 30 dimension using pca()?
  2 comentarios
Adam
Adam el 7 de Nov. de 2016
You should just be able to keep the 30 largest components from running pca.
Hg
Hg el 8 de Nov. de 2016
I use
[residuals,reconstructed] = pcares(X,ndim)

Iniciar sesión para comentar.

Respuestas (1)

Vassilis Papanastasiou
Vassilis Papanastasiou el 17 de Dic. de 2021
Hi Hg,
What you can do is to use pca directly. Say that X is of size 340x1200 (340 measurements and 1200 variables/dimensions). You want to get an output with reduced dimensionaty of 30. The code below will do that for you:
p = 30;
[~, pca_scores, ~, ~, var_explained] = pca(X, 'NumComponents', p);
  • pca_scores is your reduced dimension data.
  • var_explained contains the respective variances of each component.
I hope that helps.

Categorías

Más información sobre Dimensionality Reduction and Feature Extraction en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by