pca2.m

来自「实现pca功能的完整matlab程序」· M 代码 · 共 27 行

M
27
字号
% PCA2: Perform PCA using SVD.
% data     --- MxN matrix of input data ( M dimensions, N trials )
% signals  --- MxN matrix of projected data 
% PC       --- each column is a PC
% V        --- Mx1 matrix of variances
%
function [signals, PC, V] = pca2( data )

[M, N] = size( data );

% subtract off the mean for each dimension
mn = mean( data, 2 );
data = data - repmat( mn, 1, N );

% construct the matrix Y
Y = data' / sqrt(N-1);

% SVD does it all
[u, S, PC] = svd( Y );

% calculate the variances
S = diag( S );
V = S .* S;

% project the original data
signals = PC' * data;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?