Hi Feng, AFIK SVD analysis provides a one-step method for computing all the components of the eigen value problem, without the need to compute and store big covariance matrices. And also the resulting decomposition is computationally more stable and robust.
Cheers, Antonio Rodriguez ----- Original Message ----- From: "Feng Zhang" <[EMAIL PROTECTED]> To: "R-Help" <[EMAIL PROTECTED]> Sent: Thursday, February 06, 2003 7:03 PM Subject: [R] Confused by SVD and Eigenvector Decomposition in PCA > Hey, All > > In principal component analysis (PCA), we want to know how many percentage > the first principal component explain the total variances among the data. > > Assume the data matrix X is zero-meaned, and > I used the following procedures: > C = covriance(X) %% calculate the covariance matrix; > [EVector,EValues]=eig(C) %% > L = diag(EValues) %%L is a column vector with eigenvalues as the elements > percent = L(1)/sum(L); > > > Others argue using Sigular Value Decomposition(SVD) to > calculate the same quantity, as: > [U,S,V]=svd(X); > L = diag(S); > L = L.^2; > percent = L(1)/sum(L); > > > So which way is the correct method to calculate the percentage explained by > the first principal component? > > Thanks for your advices on this. > > Fred > > ______________________________________________ > [EMAIL PROTECTED] mailing list > http://www.stat.math.ethz.ch/mailman/listinfo/r-help --- ______________________________________________ [EMAIL PROTECTED] mailing list http://www.stat.math.ethz.ch/mailman/listinfo/r-help
