主成分分析有关函数介绍

1.barttest函数

利用该函数可以进行Bartlett维数检验,其语法格式如下。

ndim = barttest(x, alpha):用给定的显著性概率alpha,返回解释x数据矩阵的非随机变化特征所需要的维数。维数由一系列假设检验确定。假设ndim=1的检验是检验每个主成分数据值的方差是否相等;ndim=2的检验则是检验第2个主成分至最后一个主成分数据的方差是否相等,依此类推。

[ndim, prob, chisquare] = barttest(x, alpha):返回维数,假设检验的显著性概率以及与检验相关的卡方值。

2.pcacov函数

利用该函数可以使用协方差矩阵进行主成分分析,其语法格式如下。

[pc, latent, explained] = pcacov(X):输入协方差矩阵X,把主成分返回pc中,把协方差矩阵X的特征值返回latent中,把观测量中由每个特征向量所解释的方差占总方差的百分比返回explained中。

3.pcares函数

利用该函数可以计算源于主成分分析的残差,其语法格式如下。

pcares(X, ndim):返回通过保留np矩阵X的ndim个主成分来获得的残差。X的行对应于观测量,列对应于变量。ndim为标量并且必须小于或等于p。residuals是与X大小相同的矩阵。在使用本函数时,要使用数据矩阵,而不是协方差矩阵。

[residuals,reconstructed]=pcares(X,ndim):返回重建的观测量,即通过保留前ndim个主成分来获得X的近似。

4.princomp函数

利用该函数可以进行主成分分析,其语法格式如下。

COEFF=princomp(X):基于np矩阵X进行主成分分析,返回主成分系数,即所谓的荷载。X的行对应于观测量,列对应于变量。COEFF是一个pp矩阵,每列包含一个主成分的系数。列按照成分方差的大小降序排列。

[COEFF,SCORE]=princomp(X):返回主成分得分SCORE,即X在主成分空间中的表示。SCORE的行对应于观测量,列对应于主成分。

[COEFF,SCORE,latent]=princomp(X):返回latent,它包含X的协方差矩阵的特征值的向量。

[PC, SCORE, latent, tsquare] = princomp(X):返回tsquare,它包含每个数据点的Hotelling T2统计量。

得分是通过将原始数据变换到主成分空间中得到的数据。latent向量的值为SCORE的列数据的方差。Hotelling T2为每一个观测量相对于数据集中心的多变量距离的度量。

当n<=p时,SCORE(:,n:p)和latent(n:p)都必须是0,并且COEFF(:,n:p)的列为与X正交的方向。

[…]=princomp(X, 'econ'):只返回latent的不必为0的元素,以及COEFF和SCORE的对应列,即当n<=p时,只有前n1列。当p比n大很多时,这时的处理速度要明显提高。