ECG-Kit 1.0
(1,833 bytes)
%PCAM Principal component analysis (PCA or MCA on overall covariance matrix)
%
% [W,FRAC] = PCAM(A,N)
% [W,N] = PCAM(A,FRAC)
%
% INPUT
% A Dataset
% N Desired output dimensionality (>= 1), default N = inf.
% FRAC Fraction of cumulative variance (< 1) to retain,
% if > 0, perform PCA; otherwise MCA.
%
% OUTPUT
% W Affine PCA mapping
% FRAC Fraction of cumulative variance retained.
% N Number of dimensions retained.
%
% DESCRIPTION
% This routine performs a principal component analysis (PCA) or minor
% component analysis (MCA) on the overall covariance matrix (weighted
% by the class prior probabilities). It finds a rotation of the dataset A to
% an N-dimensional linear subspace such that at least (for PCA) or at most
% (for MCA) a fraction FRAC of the total variance is preserved.
%
% PCA is applied when N (or FRAC) >= 0; MCA when N (or FRAC) < 0. If N is
% given (abs(N) >= 1), FRAC is optimised. If FRAC is given (abs(FRAC) < 1),
% N is optimised.
%
% Objects in a new dataset B can be mapped by B*W, W*B or by A*PCA([],N)*B.
% Default (N = inf): the features are decorrelated and ordered, but no
% feature reduction is performed.
%
% ALTERNATIVE
%
% V = PCAM(A,0)
%
% Returns the cumulative fraction of the explained variance. V(N) is the
% cumulative fraction of the explained variance by using N eigenvectors.
%
% Use KLM for a principal component analysis on the mean class covariance.
% Use FISHERM for optimizing the linear class separability (LDA).
%
% SEE ALSO (<a href="http://37steps.com/prtools">PRTools Guide</a>)
% MAPPINGS, DATASETS, PCLDC, KLLDC, KLM, FISHERM
% Copyright: R.P.W. Duin, r.p.w.duin@37steps.com
function [w,truefrac] = pcam(varargin)
[w,truefrac] = pcaklm(mfilename,varargin{:});
return