Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Comparing svd and princomp in R

Tags:

r

pca

svd

I want to get singular values of a matrix in R to get the principal components, then make princomp(x) too to compare results

I know princomp() would give the principal components

Question

How to get the principal components from $d, $u, and $v (solution of s = svd(x) )?

like image 586
edgarmtze Avatar asked Feb 02 '26 03:02

edgarmtze


1 Answers

One way or another, you should probably look into prcomp, which calculates PCA using svd instead of eigen (as in princomp). That way, if all you want is the PCA output, but calculated using svd, you're golden.

Also, if you type stats:::prcomp.default at the command line, you can see how it's using the output of svd yourself.

like image 68
joran Avatar answered Feb 04 '26 15:02

joran