pca: missing first pc

4 Ansichten (letzte 30 Tage)
Raphael
Raphael am 9 Aug. 2015
Bearbeitet: Raphael am 9 Aug. 2015
Hello community,
using the pca function i face the following problem: i have a data set X of 1000 observations (rows) and a little less variables (columns). The data consists of linear combinations of only two vectors.
if i compute pca(X) i find the coordinates of the second pc in coeff(:,1). The first one is missing.
if i compute pca(X') if find the coordinates of both in coeff(:,1) and coeff(:,2), where coeff(:,2) is equal to coeff(:,1) of pca(X).
best regards and thanks in advance Raphael
  2 Kommentare
Image Analyst
Image Analyst am 9 Aug. 2015
Show us. Make up a 2D matrix X and demonstrate what you say. It's hard to give you a specific fix for your problem when your problem statement is not specific.
Raphael
Raphael am 9 Aug. 2015
Thanks for your answer. I wrote a comment to Sagars post which is roughly the same as yours.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Sagar
Sagar am 9 Aug. 2015
Your question is not clear, pca(X) will give coefficient matrix whose first column represents coefficients of the first principal component and so on. You cannot do pca(X') because pca understands rows as observations and columns as variables.
  3 Kommentare
Sagar
Sagar am 9 Aug. 2015
First be sure to put variables in the columns and observations in the rows. After this, if you do pca, the first column of the COEFF matrix represents the first principal component and so on. The no. of principal components will be equal to the number of variables. I don't understand what you mean by "why i found the the second pc as the first column of the scores if i use my data in the wrong way".
Raphael
Raphael am 9 Aug. 2015
Bearbeitet: Raphael am 9 Aug. 2015
was i ment is this: lets say x is the data matrix where columns are variables and rows are observations. That is when I interpret spectra as variables and its values (all spectra are made with the sample points) as observables.
[pc1 score1] = pca(x)
will give me the expected results. What i computed first was
[pc2 score2] = pca(x')
which was apparently wrong. The thing i'm still wondering about is why i found score2(:,1) = pc1(:,2) moreover i cant find an equivalent for pc1(:,2) in score2. maybe this is just a curios coincident and as i can now compute the right pcs its not that important. But i would like to understand this anyway :D

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by