主成分分析:步骤、应用及代码实现。代码可以用任何你熟悉的编程语言。
一、主成分分析概念
在用统计分析方法研究多变量课题时,变量个数太多会增加分析难度。人们希望变量个数较少而得到的信息较多。
在多数情况下,变量之间是有一定的相关性的,当两个变量之间有相关关系时,可以解释为这两个变量反映此课题的信息有重叠。通过这个可以减少变量的个数,方便分析。
全部变量——重叠、复杂性——变量之间的相关性——减少变量
应用: 神经科学、计算机图形学、数据表示、模型识别
二、基本方法
1.注意事项
1)主成分分析的结果受量纲影响,所以要先把各变量的数据标准化,然后使用协方差矩阵或相关系数矩阵进行分析。
2)主成分的保留。用相关系数矩阵求主成分时,将特征值小于1的主成分予以放弃。
3)减少变量个数,一般选取少量的主成分(不超过5-6个),只要它们能解释变异的70%-80%(由实际需求决定)就可以。
2.主成分估计
将原来的回归自变量变换到另一组变量,即主成分,选择其中一部分最重要的主成分作为新的自变量(丢失一部分影响不大的自变量,达到降维的目的),然后用最小二乘法对选取主成分后的模型参数进行估计,最后再变换回原来的模型求出参数估计。
3.特征因子的筛选
主成分分析,将XTX特征值按由大到小的次序排列之后,就要进行筛选。首先可以删去λi+1,λi+2,…,λr后,这些删去的特征值之和占整个特征值之和的15%以下,即余下特征值所占的比重超过85%(比值由实际需求所定)。
有时还需要考虑选择的主成分对原始变量的贡献值,用相关系数的平方和来表示。
4.步骤
1)根据问题选取初始分析变量
对原始数据进行标准化处理
均值差法、极值差法、有效系数法
2)根据初始变量特性判断由协方差阵还是由相关阵求主成分
3)求协方差阵或者相关阵的特征值和相应标准特征向量
4)判断是否存在明显的多重共线性,若存在,则回第一步
5)得到主成分的表达式并确定主成分个数,选取主成分
6)结合主成分对研究问题进行分析研究
三、代码实现
例:MATLAB
参考:https://b23.tv/av63956103/p7