通常情况下,数据集的变量不低于三个,如何了解各个变量与其他变量之间的关系变得非常复杂。主成分分析(PCA)是一种数据降维技巧,在损失很少信息的前提下把多个指标转化为几个综合指标的多元统计方法。例如,使用PCA可将30个相关(很可能冗余)的环境变量转化为5个无关的成分变量,并且尽可能地保留原始数据集的信息。通常把转化生成的综合指标称之为主成分,其中每个主成分都是原始变量的线性组合,且各个主成分之间互不相关,这就使得主成分比原始变量具有某些更优越的性能。
既然研究某一问题涉及的众多变量之间有一定的相关性,就必然存在着起支配作用的共同因素,根据这一点,通过对原始变量相关矩阵或协方差矩阵内部结构关系的研究,利用原始变量的线性组合形成几个综合指标(主成分),在保留原始变量主要信息的前提下起到降维与简化问题的作用,使得在研究复杂问题时更容易抓住主要矛盾。一般地说,利用主成分分析得到的主成分与原始变量之间有如下基本关系:
1.每一个主成分都是各原始变量的线性组合;
2.主成分的数目大大少于原始变量的数目
3.主成分保留了原始变量绝大多数信息
4.各主成分之间互不相关
在处理涉及多个指标问题的时候,为了提高分析的效率,可以不直接对个指标构成的维随机向量进行分析,而是先对向量进行线性变换,形成少数几个新的综合变量 ,使得各综合变量之间相互独立且能解释原始变量尽可能多的信息,这样,在以损失很少部分信息为代价的前提下,达到简化数据结构,提高分析效率的目的。
princomp()返回主成分,cor=F表示不使用相关矩阵而使用协方差矩阵
> pcal <- princomp(iris[1:4],cor=F)
> pcal
Call:
princomp(x = iris[1:4], cor = F)
Standard deviations:
Comp.1 Comp.2 Comp.3 Comp.4
2.0494032 0.4909714 0.2787259 0.1538707
4 variables and 150 observations.
summary对主成分进行总结,在Comp1中,它占据的变量成分为百分之92,前两个主成分的累积占据百分之97
> summary(pcal)
Importance of components:
Comp.1 Comp.2 Comp.3 Comp.4
Standard deviation 2.0494032 0.49097143 0.27872586 0.153870700
Proportion of Variance 0.9246187 0.05306648 0.01710261 0.005212184
Cumulative Proportion 0.9246187 0.97768521 0.99478782 1.000000000
对主成分进行画图,可以看出主成分1所占据的比重比较大
> plot(pcal)
loadings返回各个主成分的构成比例,但是当数字过于小时,显示为空白
> pcal$loadings
Loadings:
Comp.1 Comp.2 Comp.3 Comp.4
Sepal.Length 0.361 -0.657 0.582 0.315
Sepal.Width -0.730 -0.598 -0.320
Petal.Length 0.857 0.173 -0.480
Petal.Width 0.358 -0.546 0.754
Comp.1 Comp.2 Comp.3 Comp.4
SS loadings 1.00 1.00 1.00 1.00
Proportion Var 0.25 0.25 0.25 0.25
Cumulative Var 0.25 0.50 0.75 1.00
为了显示小数值,我们使用以下方式
Y = a1X1 + a2X2 + ….
在主成分一中,a1=0.3613,.....
> print(pcal$loadings,digits=8,cutoff=0)
Loadings:
Comp.1 Comp.2 Comp.3 Comp.4
Sepal.Length 0.36138659 -0.65658877 0.58202985 0.31548719
Sepal.Width -0.08452251 -0.73016143 -0.59791083 -0.31972310
Petal.Length 0.85667061 0.17337266 -0.07623608 -0.47983899
Petal.Width 0.35828920 0.07548102 -0.54583143 0.75365743
Comp.1 Comp.2 Comp.3 Comp.4
SS loadings 1.00 1.00 1.00 1.00
Proportion Var 0.25 0.25 0.25 0.25
Cumulative Var 0.25 0.50 0.75 1.00
每条数据由主成分构成的比例
> pcal$scores
Comp.1 Comp.2 Comp.3 Comp.4
[1,] -2.684125626 -0.319397247 0.027914828 0.0022624371
[2,] -2.714141687 0.177001225 0.210464272 0.0990265503
[3,] -2.888990569 0.144949426 -0.017900256 0.0199683897
[4,] -2.745342856 0.318298979 -0.031559374 -0.0755758166
[5,] -2.728716537 -0.326754513 -0.090079241 -0.0612585926
[6,] -2.280859633 -0.741330449 -0.168677658 -0.0242008576
[7,] -2.820537751 0.089461385 -0.257892158 -0.0481431065
[8,] -2.626144973 -0.163384960 0.021879318 -0.0452978706
[9,] -2.886382732 0.578311754 -0.020759570 -0.0267447358
[10,] -2.672755798 0.113774246 0.197632725 -0.0562954013
….
> biplot(pcal)