stata主成分分析_主成分分析在STATA中的实现

时间:2024-10-09 07:58:09

连享会直播课堂:滑一下就找到我们了


连享会:效率分析专题 (TFP · DEA · SFA)

Stata:生存分析专题(Survival Analysis)

主成分分析也称作主分量分析,是霍特林(Hotelling)在1933年首先提出。主成分分析是利用降维的思想,在损失较少信息的前提下把多个指标转化为较少的综合指标。转化生成的综合指标即称为主成分,其中每个主成分都是原始变量的线性组合,且各个主成分互不相关。stata对主成分分析的主要内容包括:主成分估计、主成分分析的恰当性(包括负偏协方差矩阵和负偏相关系数矩阵、KMO(Kaiser-Meyer-Olkin)抽样充分性、复相关系数、共同度等指标测度)、主成分的旋转、预测、各种检验、碎石图、得分图、载荷图等。

主成分的模型表达式为:

其中,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检验。

一、主成分估计

stata可以通过变量进行主成分分析,也可以直接通过相关系数矩阵或协方差矩阵进行。

sysuse auto,clearpca trunk weight length headroompca trunk weight length headroom,comp(2) covariance
webuse bg2,clearpca bg2cost*,vce(normal)

二、Estat

estat给出了几个非常有用的工具,包括KMO、SMC等指标。

webuse bg2,clearpca bg2cost*,vce(normal)estat antiestat kmoestat loadingsestat residualsestat smc estat summarize

三、预测

stata可以通过predict预测变量得分、拟合值和残差等。

webuse bg2,clearpca bg2cost*,vce(normal)predict score fit residual q  /*q代表残差的平方和*/

四、碎石图

碎石图是判断保留多少个主成分的重要方法。命令为screeplot

webuse bg2,clearpca bg2cost*,vce(normal)screeplot

五、得分图、载荷图

得分图即不同主成分得分的散点图。命令为scoreplot

webuse bg2,clearpca bg2cost*,vce(normal)scoreplot

载荷图即不同主成分载荷的散点图。命令为loadingplot

webuse bg2,clearpca bg2cost*,vce(normal)loadingplot

六、旋转

对载荷进行旋转的命令格式为rotate

webuse bg2,clearpca bg2cost*,vce(normal)rotate

例:对中国30个省市自治区经济发展基本情况的八项指标主成分分析,原始数据如下表:

数据:来源于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,mlable(area) yline(0) xline(0) /*得分图1*/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  /*旋转*/
  • 分析

    先对数据进行标准化处理后,接着进行主成分分析,可以得到:

    表:R的特征值和特征向量

  • 从表中看到,前3个特征值累计贡献率已达90.27%,说明前3个主成分基本包含了全部指标具有的信息,我们取前3个特征值。通过对载荷矩阵进行旋转,可得到,响应的特征向量,如下表:

    第一、第二、第三特征值向量

  • 因而前三个主成分为:

    第一主成分:F_1=0.4249x1+0.3217x2_s+0.4057x3_s+0.1856x4_s+0.3520x5_s-0.3444x6_s-0.3118x7_s+0.4209x8_s

    第二主成分:F_2=0.3064x1-0.4467x2_s+0.3855x3_s-0.6100x4_s-0.0510x5_s+0.1427x6_s+0.2767x7_s+0.2938x8_s

    第三主成分:F_3=0.1079x1+0.3101x2_s-0.0181x3_s+0.2536x4_s+0.3714x5_s-0.5784x6_s+0.5769x7_s+0.1495x8_s

    在第一主成分的表达式中第一、第三、第八项指标的系数较大,这三项指标起主要作用,我们可以把第一主成分看成是由国内生产总值、固定资产投资、工业总产值所刻画的丹樱经济社会总量的综合指标;

    在第二主成分中,第二、第三、第四项指标的影响大,且第二。第四项的影响较大,因此可以把第二主成分看成是由居民消费水平、职工平均工资表示的反应人民生活水平的综合指标;

    在第三主成分中,第六、第七项指标大于其余的指标,可看成是受居民消费价格指数、商品零售价格指数的影响,反应物价水平的综合指标。

    在这次的主成分分析里面,我们可以进行些检验以验证我们分析的效果,通过LMO检验和SMC检验,得到了下面的检验值:

    变量的KMO、SMC值表

  • 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比较高表明变量的线性关系越强,共性越强,主成分分析就越合适。从上表可以看出,在该例中,各变量基本符合要求。

    通过碎石图,我们可以很直观的看出各个特征值的大小。在该图中,特征值等于1处的水平线标示了保留主成分分析的分界点,同时再次强调了本例中的成分4到8并不重要。

    碎石图

  • 通过predict我们可以得出各个观察变量的所对应的各个主成分的线性组合(即得分)。

    在得分图里,我们可以看出不同地区在第一。第二主成分里各自的得分情况。

    得分图

  • 通过载荷图,我们可以直观看出各个变量对主成分影响的大小。

    载荷图

  • 运行rotate进行旋转后,我们将旋转后的结果和旋转前的结果进行比较,可以发现每一个观察变量独自构成一个主成分,方差贡献相等,都为12%。


连享会直播课堂:滑一下就找到我们了

?  扫码加入连享会微信群,提问交流更方便

点击此处留言