通常有两种方式 1. 直接调用PCA函数princomp 2. 使用SVD分解,调用eig
1. 直接调用PCA函数princomp
princomp的输入是原始数据。princomp会自动进行中心化。
[COEFF,SCORE,LATENT]=princomp(X)
X: 原始输入数据 Rows of X correspond to observations, columns to variables.
LATENT: 特征向量
COEFF: PCA的映射矩阵,eigen vectors,
SCORE: 将输入data X映射到生成的PCA空间,得到的PCA coefficients
得到特征向量后,可以进行映射
(1)将数据从原始空间映射到PCA空间
score=bsxfun(@minus,X,mean(X,1))*COEFF (X为测试集)
(2)将PCA coeffeicients映射到原始数据空间
x=bsxfun(@plus,score*inv(

本文介绍了PCA在MATLAB中的两种实现方式:直接使用princomp函数和通过SVD分解。详细阐述了princomp函数的输入输出参数,并通过示例展示了如何进行数据的PCA变换和反变换过程。
最低0.47元/天 解锁文章
522

被折叠的 条评论
为什么被折叠?



