Principle Component Analysis Computation
Mostrar comentarios más antiguos
Hi all I am applying Principle Component Analysis manauall. I have a Dataset let say
Data= [2.5000 2.4000
0.5000 0.7000
2.2000 2.9000
1.9000 2.2000
3.1000 3.0000
2.3000 2.7000
2.0000 1.6000
1.0000 1.1000
1.5000 1.6000
1.1000 0.9000]
when I compute directly by calling the matlab function princomp I get the PC
0.6779 0.7352
0.7352 -0.6779
But when I do manually like that
function [V newX D] = Untitled(X) X = bsxfun(@minus, X, mean(X,1)); %# zero-center C = (X'*X)./(size(X,1)-1); %'# cov(X)
[V D] = eig(C);
[D order] = sort(diag(D), 'descend'); %# sort cols high to low
V = V(:,order);
newX = X*V(:,1:end);
end
0.6779 -0.7352
0.7352 0.6779
I am getting different result just the minis difference why is it/
Thanks in Advance.
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Statistics and Machine Learning Toolbox en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!