数据清洗 主成分分析法的原理
数据清洗主成分分析法的原理:PCA(PrincipalComponentAnalysis,主成分分析)的思想,就是是一种数据降维技巧,它能将大量相关变量转化为一组很少的不相关变量,这些无关变量称为主成分。PCA的目标是用一组较少的不相关变量代替大量相关变量,同时尽可能保留初始变量的信息,这些推导所得的变量称为主成分,它们是观测变量的线性组合。如第一主成分为:PC1=a1X1=a2X2+……+akXk它是k个观测变量的加权组合,对初始变量集的方差解释性最大。第二主成分是初始变量的线性组合,对方差的解释性排第二,同时与第一主成分正交(不相关)。后面每一个主成分都最大化它对方差的解释程度,同时与之前所有的主成分都正交,但从实用的角度来看,都希望能用较少的主成分来近似全变量集。PCA中需要多少个主成分的准则:根据先验经验和理论知识判断主成分数;根据要解释变量方差的积累值的阈值来判断需要的主成分数;通过检查变量间k*k的相关系数矩阵来判断保留的主成分数。最常见的是基于特征值的方法,每个主成分都与相关系数矩阵的特征值关联,第一主成分与最大的特征值相关联,第二主成分与第二大的特征值相关联,依此类推。利用fa.parallel()函数,可同时对三种特征值判别准则进行评价。library(psych)fa.parallel(USJudgeRatings[,-1],fa="pc",n.iter=100,show.legend=FALSE,main="碎石图")碎石图、特征值大于1准则和100次模拟的平行分析(虚线)都表明保留一个主成分即可保留数据集的大部分信息principal()函数可根据原始数据矩阵或相关系数矩阵做主成分分析格式为:principal(的,nfactors=,rotate=,scores=)其中:r是相关系数矩阵或原始数据矩阵;nfactors设定主成分数(默认为1);rotate指定旋转的方式[默认最大方差旋转(varimax)]scores设定是否需要计算主成分得分(默认不需要)。library(psych)(pc<-principal(USJudgeRatings[,-1],nfactors=1))
作者:云创智学 来源:云创智学
发布时间:2021-12-30 14:12:25