查看原文
其他

玩转Stata|巧用Stata进行主成分分析

The following article is from 田田说 Author Stata成长服务部



青年会计学者联合发起会计领域NO.1高端自媒体


点击:高层次会计人才招聘免费推送!


传播会计前辈思想,引领青年一代成长

因缘分相聚,因互助成长,因智慧光华




巧用Stata进行主成分分析


************************************************************

***********************主成分估计 ***********************

************************************************************

/*

主成分分析是利用降维的思想,在损失较少信息的前提下把多个指标转化为较少的综合指标。

转化生成的综合指标即称为主成分,其中每个主成分都是原始变量的线性组合,且各个主成

分互不相关。

*/


**降维

*如果把两个变量用一个变量来表示,同时这一个新的变量又尽可能包含原来的两个变量的信息



**步骤

*-对原来的p个指标进行标准化,以消除变量在水平和量纲上的影响

*-根据标准化后的数据矩阵求出相关系数矩阵

*-求出协方差矩阵的特征根和特征向量

*-确定主成分,并对各主成分所包含的信息给予适当的解释



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


*-方法一:

sysuse auto, clear

pca trunk weight length headroom

pca trunk weight length headroom,comp(2) covariance


*方法二:

webuse bg2, clear

pca bg2cost*, vce(normal)

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

estat anti

estat kmo /*KMO检验,越高越好*/

estat loadings

estat residuals

estat smc /*SMC检验,值越高越好*/

estat summarize


*预测

*-predict预测变量得分、拟合值和残差

predict score fit residual q

//q代表残差的平方和


*碎石图

*-判断保留多少个主成分的重要方法。命令为screeplot

screeplot  /* 碎石图(特征值等于1处的水平线标示保留主成分的分界点)*/ 



*得分图、载荷图

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

scoreplot


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

loadingplot


*旋转

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

rotate



****************案例1*******************


*-对中国30个省市自治区经济发展基本情况的八项指标主成分分析


use pca.dta, 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  "工业总产值   (亿元)"


describe


pca x1-x8 /*主成分估计*/


/*

先对数据进行标准化处理后,接着进行主成分分析,可以得到:R的特征值和特征向量。


--------------------------------------------------------------------------

      主成分 |      特征值         Difference    方差贡献率    累计贡献率

-------------+------------------------------------------------------------

       Comp1 |      4.25488      2.50258             0.5319       0.5319

       Comp2 |      1.75229      .537539             0.2190       0.7509

       Comp3 |      1.21475      .760915             0.1518       0.9027

       Comp4 |      .453839      .260701             0.0567       0.9595

       Comp5 |      .193137      .124141             0.0241       0.9836

       Comp6 |      .068996     .0273463             0.0086       0.9922

       Comp7 |     .0416498     .0211944             0.0052       0.9974

       Comp8 |     .0204553            .             0.0026       1.0000

--------------------------------------------------------------------------

注:

-该表是选则主成分的主要依据

-特征值又叫方差,某个特征值占总特征值的比例称为主成分方差贡献率

-根据主成分贡献率,一般来说,主成分的累计方差贡献率达到80%以上的前几个主成分,都可以选作最后的主成分

-根据特特征根的大小 ///

一般情况下,当特征值小于1时,就不再选作主成分了,因为该主成分的解释力度还不如直接用原始变量解的释力度大



从表中看到,前3个特征值累计贡献率已达90.27%,说明前3个主成分基本包含了全部指标

具有的信息,我们取前3个特征值。通过对载荷矩阵进行旋转,可得到,相应的特征向量,

见下表:


------------------------------------------------------------------------------------------------------------

    Variable |    Comp1     Comp2     Comp3     Comp4     Comp5     Comp6     Comp7     Comp8 | Unexplained 

-------------+--------------------------------------------------------------------------------+-------------

          x1 |   0.4249    0.3064    0.1079    0.2872   -0.0702   -0.1676   -0.1953    0.7486 |           0 

          x2 |   0.3217   -0.4467    0.3101    0.0303   -0.6652   -0.1678    0.3537   -0.0637 |           0 

          x3 |   0.4057    0.3855   -0.0181   -0.0027    0.1315    0.5303    0.6159   -0.0927 |           0 

          x4 |   0.1856   -0.6100    0.2536    0.3966    0.4649    0.3664   -0.1392    0.0450 |           0 

          x5 |   0.3520   -0.0510    0.3714   -0.7953    0.2467   -0.0511   -0.1963    0.0331 |           0 

          x6 |  -0.3444    0.1427    0.5784    0.1364    0.3535   -0.4205    0.4504    0.0579 |           0 

          x7 |  -0.3118    0.2767    0.5769    0.0463   -0.3594    0.5092   -0.3183   -0.0400 |           0 

          x8 |   0.4209    0.2938    0.1495    0.3258    0.0642   -0.2995   -0.3087   -0.6472 |           0 

------------------------------------------------------------------------------------------------------------

注:

-每一列表示一个主成分作为原来变量线性组合的系数,也就是主成分分析模型中的系数

-这个系数越大,说明主成分对该变量的代表性就越大



因而前三个主成分为:

第一主成分:   F1=0.4249x1+0.3217x2+0.4057x3+0.1856x4

+0.3520x5-0.3444x6-0.3118x7+0.4209x8

第二主成分:   F2=0.3064x1-0.4467x2+0.3855x3-0.6100x4

-0.0510x5+0.1427x6+0.2767x7+0.2938x8

第三主成分:   F3=0.1079x1+0.3101x2-0.0181x3+0.2536x4

+0.3714x5-0.5784x6+0.5769x7+0.1495x8


在第一主成分的表达式中第一、第三、第八项指标的系数较大,这三项指标起主要作用,

我们可以把第一主成分看成是由国内生产总值、固定资产投资、工业总产值所刻划的反

映经济社会总量的综合指标;


在第二主成分中,第二、第三、第四项指标的影响大,且第二、第四项的影响较大,因此

可以把第二主成分看成是由居民消费水平、职工平均工资表示的反映人民生活水平的综合

指标;


在第三主成分中,第六、第七项指标大于其余的指标,可看成是受居民消费价格指数、商

品零售价格指数的影响,反映物价水平的综合指标。

*/


*----------相关性检验----------------

estat kmo /*KMO检验,越高越好*/

estat smc /*SMC检验,值越高越好*/


/*

在这次的主成分分析里面,我们可以进行些检验以验证我们分析的效果,通过KMO检验和SMC

检验,得到了下面的检验值:


变量 KMO值 SMC值

x1_s 0.7423 0.9656

x2_s 0.5361 0.8366

x3_s 0.7706 0.9276

x4_s 0.4737 0.7647

x5_s 0.6794 0.6515

x6_s 0.5467 0.8837

x7_s 0.5482 0.8627

x8_s 0.7692 0.9591

合计 0.6447 ---


Kaiser-Meyer-Olkin抽样充分性测度也是用于测量变量之间相关关系的强弱的重要指标,

是通过比较两个变量的相关系数与偏相关系数得到的。KMO介于0于1之间。KMO越高,表

明变量的共性越强。如果偏相关系数相对于相关系数比较高,则KMO比较低,主成分分析

不能起到很好的数据约化效果。根据Kaiser(1974),一般的判断标准如下:0.00-0.49,

不能接受(unacceptable);0.50-0.59,非常差(miserable);0.60-0.69,勉强接受;

0.70-0.79,可以接受(middling);0.80-0.89,比较好(meritorious);

0.90-1.00,非常好(marvelous)。


SMC即一个变量与其他所有变量的复相关系数的平方,也就是复回归方程的可决系数。SMC

比较高表明变量的线性关系越强,共性越强,主成分分析就越合适。

根据KMO越高,表明变量的共性越强和SMC比较高表明变量的线性关系越强,共性越强,主

成分分析就越合适。从上表可以看出,在该例中,各变量基本符合要求。


*/


screeplot  /* 碎石图(特征值等于1处的水平线标示保留主成分的分界点)*/


/*

实践中,通常结合具体情况,选择碎石图中变化趋势出现拐点的前几个主成分作为原先变量

的代表,该例中选择前3个主成分即可。


通过碎石图,我们可以很直观的看出各个特征值的大小。在该图中,特征值等于1处的水

平线标示了保留主成分分析的分界点,同时再次强调了本例中的成分4到8并不重要。

*/


predict score fit residual q /*预测变量得分、拟合值和残差以及残差的平方和*/

predict f1 f2 f3

predict q1 q2 q3

/*

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

*/



scoreplot,mlabel(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  /*旋转*/

/*

运行rotate进行旋转后,我们将旋转后的结果和旋转前的结果进行比较,可以发现每一个

观察变量独自构成一个主成分,方差贡献相等,都为12%。

*/



*************因子分析**************


*因子分析可以看作是主成分分析的推广和扩展,但它对问题的研究更深入、更细致一些。

*实际上,主成分分析可以看作是因子分析的一个特例


/*

因子分析是通过对变量之间关系的研究,找出能综合原始变量的少数几个因子,使得少数

因子能够反映原始变量的绝大部分信息,然后根据相关性的大小将原始变量分组,使得组

内的变量之间相关性较高,而不同组的变量之间相关性较低。因此,因子分析属于多元统

计中处理降维的一种统计方法,其目的就是要减少变量的个数,用少数因子代表多个原始

变量

*/


▼点击查看更多精彩

玩转stata:分组回归的秘密武器-statsby


转自:田田说公众号

欢迎分享转发朋友圈



1

学习试听(原速播放版)

https://v.qq.com/txp/iframe/player.html?vid=x1328vthei3&width=500&height=375&auto=0


2

学习试听(1.5倍加速播放版)

https://v.qq.com/txp/iframe/player.html?vid=y1328h9ij7s&width=500&height=375&auto=0


更多stata学习资料

欢迎点击左下方阅读原文


“会计学术联盟”旗下优质社群推荐

“中国高校会计教师联盟(697人)”欢迎加入!


欢迎诸位加入会计学术联盟旗下的“中国高校会计教师联盟微信2群”,希望大家积极贯彻联盟发展理念:传播会计前辈思想,引领青年一代成长;发扬联盟发展文化:传正能量,广交朋友,整合资源,服务成长~


感谢大家一直以来的各种捧场支持!


为便于大家认识,切磋会计教学手艺,请及时修改群名:“称呼+单位简称+学历+职称”


高校老师相加群,请联系微信610997158,申请好友主题:“称呼+单位简称+学历+职称”(本群仅限高校或科研机构同仁加群!)


欢迎邀请与本群文化相匹配的正能量,积极向上的,又好玩的同仁入群!


中国高校会计教师联盟


2017年12月20日



▼点击查看更多精彩

王开田:会计情商及其培养

陈艳:会计舞弊研究之路及对未来的思考

张新民:财务分析的战略视角

王化成:基于能力提升的财务管理教学思考

谢志华:会计教授演讲金句及精妙逻辑推演选摘

姜国华:关于会计学术研究的点滴心得

陆铭:如何把实证研究进行到底?

辛清泉:一江春水向东流

叶康涛:我的会计研究之路:从代理观到认知观

2017年全国会计领军人才(学术类)入选人员|简介汇编


▼学习充电推荐

高级会计人才网络招聘报名

Stata培训及实证会计论文学习|12月特惠营


近50000本硕博关注

会计领域NO.1高端自媒体

汇聚会计学子、学者、学师


投稿及战略合作,请联系微信:610997158,自我介绍下,注明事由

投稿:Accounting_AU@yeah.net


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存