第十二章 主成分分析主成分分分析也称作主分量分析,是霍特林(Hotelling)在1933年首先提出。
主成分分析是利用降维的思想,在损失较少信息的前提下把多个指标转化为较少的综合指标。
转化生成的综合指标即称为主成分,其中每个主成分都是原始变量的线性组合,且各个主成分互不相关。
Stata 对主成分分析的主要内容包括:主成分估计、主成分分析的恰当性(包括负偏协方差矩阵和负偏相关系数矩阵、KMO(Kaiser-Meyer-Olkin)抽样充分性、复相关系数、共同度等指标测度)、主成分的旋转、预测、各种检验、碎石图、得分图、载荷图等。
p j n i b a y ij j i ij ,,2,1,,2,1,' ==+=ε主成分的模型表达式为:pp j i i i i diag v v v v i pV V C λλλλλλλ≥≥≥=∧=''==∧=∑ 2121),,,,(01其中,a 称为得分,b 称为载荷。
主成分分析主要的分析方法是对相关系数矩阵(或协方差矩阵)进行特征值分析。
Stata 中可以通过负偏相关系数矩阵、负相关系数平方和KMO 值对主成分分析的恰当性进行分析。
负偏相关系数矩阵即变量之间两两偏相关系数的负数。
非对角线元素则为负的偏相关系数。
如果变量之间存在较强的共性,则偏相关系数比较低。
因此,如果矩阵中偏相关系数较高的个数比较多,说明某一些变量与另外一些变量的相关性比较低,主成分模型可能不适用。
这时,主成分分析不能得到很好的数据约化效果。
Kaiser-Meyer-Olkin 抽样充分性测度也是用于测量变量之间相关关系的强弱的重要指标,是通过比较两个变量的相关系数与偏相关系数得到的。
KMO 介于0于1之间。
KMO 越高,表明变量的共性越强。
如果偏相关系数相对于相关系数比较高,则KMO 比较低,主成分分析不能起到很好的数据约化效果。
根据Kaiser (1974),一般的判断标准如下:0.00-0.49,不能接受(unacceptable );0.50-0.59,非常差(miserable );0.60-0.69,勉强接受(mediocre );0.70-0.79,可以接受(middling );0.80-0.89,比较好(meritorious );0.90-1.00,非常好(marvelous )。
SMC 即一个变量与其他所有变量的复相关系数的平方,也就是复回归方程的可决系数。
SMC 比较高表明变量的线性关系越强,共性越强,主成分分析就越合适。
成分载荷、KMO 、SMC 等指标都可以通过extat 命令进行分析。
多元方差分析是方差分析在多元中的扩展,即模型含有多个响应变量。
本章介绍多元(协)方差分析以及霍特林(Hotelling)均值向量T 检验。
12.1 主成分估计Stata 可以通过变量进行主成分分析,也可以直接通过相关系数矩阵或协方差矩阵进行。
(1)sysuse auto,clearpca trunk weight length headroompca trunk weight length headroom, comp(2) covariance(2)webuse bg2,clear pca bg2cost*, vce(normal)12.2 Estatestat 给出了几个非常有用的工具,包括KMO 、SMC 等指标。
webuse bg2,clearpca bg2cost*, vce(normal) estat anti estat kmo estat loadings estat residuals estat smc estat summarize12.3 预测Stata 可以通过predict 预测变量得分、拟合值和残差等。
webuse bg2,clearpca bg2cost*, vce(normal)predict score fit residual q (备注:q 代表残差的平方和)12.4 碎石图碎石图是判断保留多少个主成分的重要方法。
命令为screeplot 。
webuse bg2,clearpca bg2cost*, vce(normal) screeplotE i g e n v a l u e s12.5 得分图、载荷图得分图即不同主成分得分的散点图。
命令为scoreplot 。
webuse bg2,clearpca bg2cost*, vce(normal) scoreplotS c o r e s f o r c o m p o n e n t 2载荷图即不同主成分载荷的散点图。
命令为loadingplot 。
webuse bg2,clearpca bg2cost*, vce(normal) loadingplotC o m p o n e n t 212.6 旋转对载荷进行旋转的命令格式为rotate。
webuse bg2,clearpca bg2cost*, vce(normal)rotate例:对中国30个省市自治区经济发展基本情况的八项指标主成分分析,原始数据如下表:省份GDP(亿元)居民消费水平(元)固定资产投资(亿元)职工平均工资(元)货物周转量(亿吨公里)居民消费价格指数(上年100)商品零售价格指数(上年100)工业总产值(亿元)area x1x2x3x4x5x6x7x8北京10488.03203463814.756328758.9105.1104.410413天津6354.38140003389.8417482703.4105.4105.112503河北16188.6165708866.6247565925.5106.2106.723031山西6938.7361873531.2258282562.2107.2107.210024内蒙古7761.881085475.4261143658.7105.7104.78740.2辽宁13461.57962510019.1277297033.9104.6105.324769吉林6424.0675915038.9234861157.8105.1106.28406.9黑龙江831070393656230461690.9105.6105.87624.5上海13698.152********.156********.8105.8105.325121江苏30312.611101315300.6316674300.9105.4104.967799浙江21486.92138939323341464974.9105106.340832安徽8874.1763776747263635843.2106.2106.311162福建10823.11103615207.7257022396.2104.6105.715213江西6480.3357534745.4210002285.5106106.18499.6山东31072.06957315435.92640410107.8105.3104.962959河南18407.78587710490.6248165165.1107107.526028湖北11330.3874065647227392526.4106.3106.313455湖南11156.6471455534248702349.8106105.611553广东35696.461439010868.7331104428.4105.610665425广西7171.5861033756.4256602079107.8107.66072海南1459.236550705.421864597.7106.9106.71103.1重庆5096.6698353979.6269851490.3105.61055755.9四川12506.2560727127.8250381578.7105.1105.314762贵州3333.444261864.524602805.3107.6107.23111.1云南5700.145533435.924030821.3105.7106.15144.6西藏395.913504309.94728035.5105.7103.948.19陕西6851.3262904614.4259422027106.4106.97480.8甘肃3176.1148691712.8240171594.9108.2107.93667.5青海961.535830583.230983335.7110.1110.61103.1宁夏1098.517193828.930719703.6108.5108.51366.5新疆4203.4155422260246871273108.1108.54276.1数据:来源于2009年《中国统计年鉴》程序:clear*定义变量的标签label var area 省份label var x1 "GDP (亿元)"label var x2 "居民消费水平(元)"label var x3 "固定资产投资(亿元)"label var x4 "职工平均工资(元)"label var x5 "货物周转量 (亿吨公里)"label var x6 "居民消费价格指数 (上年100)"label var x7 "商品零售价格指数 (上年100)"label var x8 "工业总产值 (亿元)"describepca x1-x8 /*主成分估计*/estat kmo /*KMO检验,越高越好*/estat smc /*SMC检验,值越高越好*/screeplot /* 碎石图(特征值等于1处的水平线标示保留主成分的分界点)*/predict score fit residual q /*预测变量得分、拟合值和残差以及残差的平方和*/ predict f1 f2 f3predict q1 q2 q3scoreplot,mlabel(area) yline(0) xline(0) /*得分图*/scoreplot,xtitle("经济社会总量") ytitle("人民生活水平") ///mlabel(area) yline(0) xline(0) /*得分图*/scatter f2 f3,xtitle("人民生活水平") ytitle("物价水平") ///mlabel(area) yline(0) xline(0) /*得分图*/scoreplot, factors(3) mlabel(area) /*得分图*/scoreplot,combined factors(3) mlabel(area) yline(0) xline(0) /*得分图*/loadingplot , yline(0) xline(0)/*载荷图 */loadingplot , combined factors(3) yline(0) xline(0)/*载荷图 */rotate /*旋转*/分析:先对数据进行标准化处理后,接着进行主成分分析,可以得到:从表中看到,前3个特征值累计贡献率已达90.27%,说明前3个主成分基本包含了全部指标具有的信息,我们取前3个特征值。