利用R语言进行因子分析实战(数据+代码+可视化+详细分析)

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972

个人介绍: 研一|统计学|干货分享
         擅长Python、Matlab、R等主流编程软件
         累计十余项国家级比赛奖项,参与研究经费10w、40w级横向

文章目录

  • [1 研究背景](#1 研究背景)
  • [2 数据预处理](#2 数据预处理)
  • [3 样本相关系数矩阵 R及特征根与特征向量](#3 样本相关系数矩阵 R及特征根与特征向量)
    • [3.1 相关系数矩阵](#3.1 相关系数矩阵)
    • [3.2 特征根与特征向量](#3.2 特征根与特征向量)
  • [4 因子数确定](#4 因子数确定)
    • [4.1 1.bartlett 球体检验](#4.1 1.bartlett 球体检验)
    • [4.2 碎石图及方差累计贡献率](#4.2 碎石图及方差累计贡献率)
  • [5 因子载荷矩阵](#5 因子载荷矩阵)
    • [5.1 方差贡献](#5.1 方差贡献)
    • 5.2共同度
    • [5.3 因子载荷](#5.3 因子载荷)
  • [6 因子得分](#6 因子得分)
    • [6.1 因子得分矩阵](#6.1 因子得分矩阵)
    • [6.2 前两个因子得分信息图](#6.2 前两个因子得分信息图)
    • [6.3 前两个因子信息重叠图](#6.3 前两个因子信息重叠图)
  • [7 因子旋转及结果比较](#7 因子旋转及结果比较)
    • [7.1 旋转后方差贡献](#7.1 旋转后方差贡献)
    • [7.2 旋转后共同度](#7.2 旋转后共同度)
    • [7.3 旋转后因子载荷](#7.3 旋转后因子载荷)
    • [7.4 旋转后前两个因子得分信息图](#7.4 旋转后前两个因子得分信息图)
    • [7.5 旋转后前两个因子信息重叠图](#7.5 旋转后前两个因子信息重叠图)
  • [8 排序](#8 排序)
    • [8.1 旋转前综合得分排序](#8.1 旋转前综合得分排序)
    • [8.2 旋转前综合得分排序(按排名前后)](#8.2 旋转前综合得分排序(按排名前后))
    • [8.3 旋转后综合得分排序](#8.3 旋转后综合得分排序)
    • [8.2 旋转后综合得分排序(按排名前后)](#8.2 旋转后综合得分排序(按排名前后))

1 研究背景

因子分析法在股价预报上的探索:在本例中为了验证因子分析法的有效性,特意不区分行业,以上海证券交易所和深圳证券交易 所进行分层,然后把层内全部股票选入抽样框,已进行随机抽取。从 手机金融界(http://www.jrj.com.cn) 得到了23家企业在2004年3月 31日,所考虑的指标如下: x 1 x_1 x1 流动比率(<2偏低)、 x 2 x_2 x2 速动比率(<1偏 低)、 x 3 x_3 x3 现金流动负债比(%)、 x 4 x_4 x4 每股收益(元)、 x 5 x_5 x5 每股未分配利 润(元)、 x 6 x_6 x6 每股净资产(元)、 x 7 x_7 x7 每股资本公积金(元)、 x 8 x_8 x8 每股盈 余公积金(元)、 x 9 x_9 x9每股净资产增长率(%)、 x 10 x_{10} x10 经营净利润率 (%)、 x 11 x_{11} x11 经营毛利率(%)、 x 12 x_{12} x12资产利润率(%)、 x 13 x_{13} x13 资产净利率 (%)、 x 14 x_{14} x14 主营业务收入增长率(%)、 x 15 x_{15} x15 净利润增长率(%)、 x 16 x_{16} x16总 资产增长率(%)、 x 17 x_{17} x17营业利润增长率(%)、 x 18 x_{18} x18主营业务成本比例 (%)、 x 19 x_{19} x19 营业费用比例(%)、 x 20 x_{20} x20 管理费用比例(%)、 x 21 x_{21} x21财务费用 比率(%)。 具体数据见表1所示。
表1 23企业财务数据(2004.03.31)

2 数据预处理

运行程序:

rm(list=ls()) #清空变量 
library("openxlsx") #加载包 
library("knitr") #加载包 
library("xlsx") #加载包 
data<-read.xlsx("G:\\23 个企业财务数据.xlsx",'Sheet1',encoding = "UTF-8")
 #读取数据 
data1=data.frame(data[,-1],row.names=data$名称) #将第一列作为行名称 
head(data1) #显示前六行 

运行结果:

## X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 
 X11 X12 
## 深深房A 1.33 0.33 -1.44 -0.02 -0.92 1.11 0.95 0.12 11.10 -12.85 
8.37 -0.67 
## 同人华塑 0.76 0.73 -4.96 0.02 -1.42 1.57 1.86 0.12 -10.38 4.91 3
1.44 0.60 
## 南开戈德 1.21 1.14 -4.72 -0.02 -0.72 1.03 0.53 0.23 -46.59 -28.03 
0.47 -0.62 
## st 昌源 0.79 0.60 -0.19 -0.02 -1.96 0.03 0.86 0.11 -96.94 -993.95 4
0.57 -0.70 
## 山东巨力 0.75 0.58 7.55 -0.35 -0.36 1.78 1.02 0.11 -28.02 0.24 
7.59 0.11 
## 一汽夏利 1.11 1.01 7.27 0.01 -0.26 1.67 0.82 0.10 9.34 0.87 
7.10 0.18 
## X13 X14 X15 X16 X17 X18 X19 X20 X2
1 
## 深深房A -0.67 -16.66 23.64 -11.39 -40.31 89.76 3.43 15.80 6.61 
## 同人华塑 0.37 217.62 218.61 31.30 282.07 68.22 2.86 11.85 9.59 
## 南开戈德 -0.64 133.02 56.28 -32.22 -46.59 98.70 1.87 10.94 13.27 
## st 昌源 -0.70 -96.89 -1841.70 -33.45 -96.94 57.86 3.80 237.64 797.5
5 
## 山东巨力 0.07 -13.35 28.88 27.25 24.36 92.40 3.23 3.46 1.10 
## 一汽夏利 0.18 10.32 -76.29 -5.76 -48.34 88.59 3.94 4.05 2.03 

3 样本相关系数矩阵 R及特征根与特征向量

3.1 相关系数矩阵

运行程序:

R<-cor(scale(data1))
R #相关矩阵

运行结果:

## X1 X2 X3 X4 X5 
 X6 
## X1 1.000000000 -0.06153191 0.074080250 0.12217010 0.170396550 -
0.01669067 
## X2 -0.061531909 1.00000000 0.462294864 0.38568343 0.532509303 
0.37491343 
## X3 0.074080250 0.46229486 1.000000000 0.24825336 0.094487515 
0.07353926 
## X4 0.122170105 0.38568343 0.248253364 1.00000000 0.249061005 0.28169643 
## X5 0.170396550 0.53250930 0.094487515 0.24906100 1.000000000 
0.82832779 
## X6 -0.016690668 0.37491343 0.073539262 0.28169643 0.828327787 
1.00000000 
## X7 -0.234562938 0.04621099 0.015007142 0.22298898 0.274511241 
0.75023269 
## X8 -0.003886565 -0.09405736 0.055571811 0.04768421 -0.055839114 
0.09390576 
## X9 0.093608232 0.09354447 -0.052642088 0.11575240 0.488243601 
0.51406649 
## X10 0.061624059 0.17378058 0.003222508 0.04524770 0.372996599 
0.28114151 
## X11 -0.172487326 0.42412261 0.275328202 0.30367342 0.072468988 -
0.01567376 
## X12 0.007435315 0.82503322 0.628388114 0.47130025 0.528646924 
0.46987699 
## X13 0.015583557 0.83755840 0.595317952 0.45416308 0.533697597 
0.44101417 
## X14 -0.081522989 -0.03144020 0.081460679 0.22347530 0.038206165 
0.24603283 
## X15 0.099497513 0.16255701 0.034665896 0.07950735 0.272334749 
0.15238013 
## X16 -0.011304314 0.17903152 -0.007104325 -0.01088111 0.195372221 
0.19022317 
## X17 -0.032394586 -0.03581853 0.131841507 0.17538500 0.005235359 
0.21888924 
## X18 0.163729735 -0.23399008 -0.251764348 -0.37306446 -0.094638183 
0.01962742 
## X19 -0.147420470 -0.05386091 0.066063556 0.21013183 -0.086451006 -
0.16267865 
## X20 -0.096323265 -0.13921246 -0.049401998 -0.06378943 -0.396083117 -
0.27624549 
## X21 -0.061707669 -0.14160451 0.014303681 -0.02744991 -0.351356950 -
0.26568880 
## X7 X8 X9 X10 X11 
 X12 
## X1 -0.23456294 -0.003886565 0.09360823 0.061624059 -0.17248733 
0.007435315 
## X2 0.04621099 -0.094057358 0.09354447 0.173780578 0.42412261 
0.825033221 
## X3 0.01500714 0.055571811 -0.05264209 0.003222508 0.27532820 
0.628388114 
## X4 0.22298898 0.047684210 0.11575240 0.045247704 0.30367342 
0.471300255 
## X5 0.27451124 -0.055839114 0.48824360 0.372996599 0.07246899 
0.528646924 
## X6 0.75023269 0.093905757 0.51406649 0.281141507 -0.01567376 
0.469876993 
## X7 1.00000000 0.040168233 0.31384313 0.072798588 -0.12296917 0.166020894 
## X8 0.04016823 1.000000000 -0.24107141 0.124840958 0.13517281 
0.179242515 
## X9 0.31384313 -0.241071409 1.00000000 0.293291223 -0.32752457 
0.147966103 
## X10 0.07279859 0.124840958 0.29329122 1.000000000 -0.22212248 
0.216368510 
## X11 -0.12296917 0.135172813 -0.32752457 -0.222122482 1.00000000 
0.552749503 
## X12 0.16602089 0.179242515 0.14796610 0.216368510 0.55274950 
1.000000000 
## X13 0.12304282 0.119320235 0.16836925 0.247344634 0.55058564 
0.992446303 
## X14 0.23125318 0.563584784 0.20306690 0.260532186 -0.11056895 
0.237073302 
## X15 -0.06734714 0.203689546 0.30924912 0.929707425 -0.20864321 
0.240829712 
## X16 0.13591627 -0.331929870 0.73026516 0.341540622 -0.03738791 
0.222875746 
## X17 0.22013136 0.616385378 0.08564930 0.170482255 0.03463550 
0.269910101 
## X18 0.13975241 -0.066552262 0.24366474 0.110514023 -0.82785683 -
0.373138052 
## X19 -0.14640045 0.170168664 -0.38169180 0.082697358 0.42935280 -
0.049595354 
## X20 -0.02148457 -0.138708575 -0.35758545 -0.979536298 0.25538811 -
0.234238515 
## X21 -0.07184816 -0.127129057 -0.28076865 -0.997822781 0.25760531 -
0.171628299 
## X13 X14 X15 X16 X17 
 X18 
## X1 0.01558356 -0.08152299 0.09949751 -0.011304314 -0.032394586 
0.16372973 
## X2 0.83755840 -0.03144020 0.16255701 0.179031515 -0.035818526 -
0.23399008 
## X3 0.59531795 0.08146068 0.03466590 -0.007104325 0.131841507 -
0.25176435 
## X4 0.45416308 0.22347530 0.07950735 -0.010881110 0.175384996 -
0.37306446 
## X5 0.53369760 0.03820617 0.27233475 0.195372221 0.005235359 -
0.09463818 
## X6 0.44101417 0.24603283 0.15238013 0.190223171 0.218889235 
0.01962742 
## X7 0.12304282 0.23125318 -0.06734714 0.135916265 0.220131359 
0.13975241 
## X8 0.11932023 0.56358478 0.20368955 -0.331929870 0.616385378 -
0.06655226 
## X9 0.16836925 0.20306690 0.30924912 0.730265160 0.085649300 
0.24366474 
## X10 0.24734463 0.26053219 0.92970742 0.341540622 0.170482255 0.11051402 
## X11 0.55058564 -0.11056895 -0.20864321 -0.037387913 0.034635501 -
0.82785683 
## X12 0.99244630 0.23707330 0.24082971 0.222875746 0.269910101 -
0.37313805 
## X13 1.00000000 0.18917087 0.27038744 0.282668062 0.218131057 -
0.37778065 
## X14 0.18917087 1.00000000 0.42565829 0.080413093 0.932856749 
0.05853132 
## X15 0.27038744 0.42565829 1.00000000 0.391354848 0.343914592 
0.10506220 
## X16 0.28266806 0.08041309 0.39135485 1.000000000 0.051525332 -
0.04790764 
## X17 0.21813106 0.93285675 0.34391459 0.051525332 1.000000000 -
0.06860992 
## X18 -0.37778065 0.05853132 0.10506220 -0.047907635 -0.068609916 
1.00000000 
## X19 -0.06382311 -0.27002736 0.03264792 -0.162400052 -0.172520270 -
0.63224454 
## X20 -0.26416708 -0.32760432 -0.94604894 -0.367968031 -0.221273268 -
0.10935488 
## X21 -0.19966813 -0.24725774 -0.92368522 -0.318668641 -0.154666882 -
0.13756932 
## X19 X20 X21 
## X1 -0.14742047 -0.09632327 -0.06170767 
## X2 -0.05386091 -0.13921246 -0.14160451 
## X3 0.06606356 -0.04940200 0.01430368 
## X4 0.21013183 -0.06378943 -0.02744991 
## X5 -0.08645101 -0.39608312 -0.35135695 
## X6 -0.16267865 -0.27624549 -0.26568880 
## X7 -0.14640045 -0.02148457 -0.07184816 
## X8 0.17016866 -0.13870857 -0.12712906 
## X9 -0.38169180 -0.35758545 -0.28076865 
## X10 0.08269736 -0.97953630 -0.99782278 
## X11 0.42935280 0.25538811 0.25760531 
## X12 -0.04959535 -0.23423851 -0.17162830 
## X13 -0.06382311 -0.26416708 -0.19966813 
## X14 -0.27002736 -0.32760432 -0.24725774 
## X15 0.03264792 -0.94604894 -0.92368522 
## X16 -0.16240005 -0.36796803 -0.31866864 
## X17 -0.17252027 -0.22127327 -0.15466688 
## X18 -0.63224454 -0.10935488 -0.13756932 
## X19 1.00000000 -0.06016584 -0.10488972 
## X20 -0.06016584 1.00000000 0.97643054 
## X21 -0.10488972 0.97643054 1.00000000

3.2 特征根与特征向量

运行程序:

D.e<-eigen(R,symmetric = T) 
D.e #特征值和特征向量 

运行结果:

## eigen() decomposition 
## $values ##特征根 
## [1] 5.774321e+00 3.979642e+00 2.568309e+00 2.352965e+00 1.485929e+0
0 
## [6] 1.256102e+00 1.040364e+00 7.745414e-01 6.158785e-01 3.891699e-0
1 
## [11] 3.436507e-01 1.914727e-01 7.919589e-02 6.544455e-02 3.552861e-0
2 
## [16] 2.898949e-02 1.420473e-02 3.223427e-03 8.151549e-04 2.240933e-0
4 
## [21] 2.859577e-05 
## 
## $vectors ##特征向量 
## [,1] [,2] [,3] [,4] [,5] 
 [,6] 
## [1,] -0.02548243 0.06408178 0.05260639 -0.069422778 0.416393421 
-0.38248883 
## [2,] -0.23873362 -0.27946147 0.15110401 -0.111727152 0.177144626 
-0.05852967 
## [3,] -0.13531234 -0.25549050 -0.03424067 -0.005415586 0.339745511 
-0.01603194 
## [4,] -0.16204963 -0.22467262 -0.01293219 0.063138117 -0.094654458 
-0.11010774 
## [5,] -0.28326464 -0.05839568 0.26171192 -0.036427312 -0.131343122 
-0.31841919 
## [6,] -0.27141534 -0.03358116 0.27199746 0.222259801 -0.317460839 
-0.26087668 
## [7,] -0.12870199 0.01012201 0.22689116 0.336935520 -0.432206693 
-0.08686832 
## [8,] -0.08098417 -0.02201499 -0.42140119 0.303888601 -0.020732721 
-0.20311230 
## [9,] -0.20938556 0.17096933 0.35365700 0.067124916 -0.037198420 
 0.28388211 
## [10,] -0.31074028 0.23667594 -0.15003843 -0.225386575 -0.066882560 
-0.07107349 
## [11,] -0.03561490 -0.42632493 -0.13962218 -0.102012315 -0.111671701 
 0.15864530 
## [12,] -0.30296197 -0.30936390 0.03442232 0.030696408 0.178791399 
 0.00634215 
## [13,] -0.30537437 -0.29808149 0.05180101 -0.017727430 0.191386032 
 0.04025364 
## [14,] -0.19505648 0.08674292 -0.25910349 0.444418877 0.072076407 
 0.18216486 
## [15,] -0.30928578 0.23199705 -0.21988794 -0.166138090 0.067897546 
 0.06130767 
## [16,] -0.19149536 0.09710464 0.22084793 -0.128750702 -0.006200085 
 0.61257505 
## [17,] -0.17173736 0.02291563 -0.29807766 0.448341522 0.066229959 
 0.18230766 ## [18,] 0.04384554 0.35714703 0.19426405 0.163259075 0.264698000 
-0.21261659 
## [19,] 0.03053807 -0.15705905 -0.30294607 -0.303918243 -0.433186346 
-0.08244250 
## [20,] 0.31955403 -0.24163112 0.15375322 0.202515841 0.018628571 
 0.04031877 
## [21,] 0.29868243 -0.25189414 0.15593091 0.228876198 0.079812320 
 0.09012865 
## [,7] [,8] [,9] [,10] [,11] 
 [,12] 
## [1,] 0.636366679 0.08143104 0.242686471 0.33858918 -0.13815915 
 0.15688754 
## [2,] -0.262120285 0.04138054 -0.310811412 0.01349571 0.15338838 
 0.59195527 
## [3,] -0.161298467 -0.50143654 0.562631779 -0.31410639 -0.04589144 
-0.06459551 
## [4,] 0.456502771 -0.50845801 -0.532606508 -0.02126754 0.17529782 
-0.15743739 
## [5,] 0.081660547 0.37580391 0.014168454 -0.40914930 -0.11624511 
 0.03913212 
## [6,] -0.010261614 0.12423007 0.143970118 -0.04070487 -0.07860738 
 0.05052630 
## [7,] -0.124687964 -0.33731697 0.194603880 0.46080003 -0.12984044 
 0.03465067 
## [8,] -0.025153184 0.26923527 0.190728138 0.12713442 0.63508627 
-0.12401868 
## [9,] 0.276532749 0.03682955 0.111795887 -0.29605563 0.37110758 
-0.22647356 
## [10,] -0.099348590 -0.04721962 -0.023387799 0.11883698 -0.10302095 
-0.10425004 
## [11,] 0.038169314 0.27976727 -0.007832286 0.27356421 -0.12767072 
-0.28078846 
## [12,] -0.116863126 0.03462099 0.011967932 0.12755751 0.07492971 
-0.12900554 
## [13,] -0.111840324 0.06158336 -0.025169550 0.16399594 0.05712354 
-0.15855071 
## [14,] 0.081996601 -0.01470923 -0.146226247 -0.20166486 -0.15476192 
 0.08290651 
## [15,] -0.006643993 -0.02179444 -0.095335212 0.02419056 -0.01391883 
 0.06901095 
## [16,] 0.179869238 0.05102451 0.186558370 0.26642108 0.16216143 
 0.25051586 
## [17,] 0.114346765 0.07128657 0.030512728 -0.05748123 -0.26535232 
 0.30930689 
## [18,] -0.254424766 -0.12035678 -0.109957932 0.14901261 0.32844551 
 0.08614006 
## [19,] 0.162995316 -0.14958059 0.237549381 -0.12874666 0.26755881 
 0.42274390 
## [20,] 0.033224812 0.04559651 -0.018500557 0.06107555 0.07204513 
 0.18245879 ## [21,] 0.101996230 0.06777678 0.012133026 -0.10333074 0.07512766 
 0.05550375 
## [,13] [,14] [,15] [,16] [,1
7] 
## [1,] 0.05611815 0.091387429 0.109587193 -0.040807848 0.11320361
8 
## [2,] 0.10408241 0.436940811 0.020514714 -0.005671351 0.09454589
4 
## [3,] 0.08964164 0.128443855 -0.050747019 -0.062833388 -0.26041823
7 
## [4,] -0.07194730 -0.020236810 -0.109822203 0.064276818 -0.25233317
9 
## [5,] -0.05650554 -0.176574862 -0.050033310 -0.020200717 -0.37705219
9 
## [6,] -0.01730700 0.005372915 0.028962350 -0.090330985 -0.02350052
5 
## [7,] 0.03707135 0.071489762 -0.034946909 -0.137191759 0.10787300
4 
## [8,] -0.19701134 0.229883594 -0.102623369 -0.053321166 -0.15190365
9 
## [9,] 0.36411191 0.208214161 -0.068986860 0.089735194 0.38334546
9 
## [10,] 0.02293971 0.233492970 0.002408922 0.234858196 -0.10169333
2 
## [11,] 0.62532047 0.050027232 0.104800446 -0.033178514 -0.27318719
8 
## [12,] -0.08566347 -0.306034634 0.102846188 0.086707074 0.31402431
3 
## [13,] -0.21476513 -0.311095415 0.006437673 0.057888266 0.19920674
0 
## [14,] 0.02754061 0.067548254 0.662465708 -0.268410784 -0.00406629
4 
## [15,] 0.17196108 -0.187391464 -0.422293639 -0.706880751 0.06668469
8 
## [16,] -0.27483756 -0.079004876 0.078789368 0.003662778 -0.43133403
7 
## [17,] 0.15143886 -0.158488024 -0.435943945 0.455546165 0.02644860
6 
## [18,] 0.42294373 -0.412234327 0.153290010 0.129631481 -0.26383158
7 
## [19,] 0.16951102 -0.320105070 0.205849312 0.072945220 0.16280363
8 
## [20,] 0.10825745 0.113036534 -0.221808300 -0.127311775 -0.09964591
1 
## [21,] -0.05831066 -0.218234559 -0.054345309 -0.259259884 0.04300996
7 
## [,18] [,19] [,20] [,21] 
## [1,] 0.015363693 -0.026162216 0.0146950823 -0.0037952280 
## [2,] 0.175102686 0.024277360 0.1059086286 -0.0057075941 
## [3,] 0.026680118 0.018849019 -0.0251415557 0.0020082992 ## [4,] 0.015753956 0.072571330 -0.0192674860 0.0112551373 
## [5,] -0.130282113 -0.252520840 0.3315250612 -0.1650565291 
## [6,] 0.122041765 0.425723495 -0.5623462524 0.2531483040 
## [7,] 0.028772099 -0.224151955 0.3409726722 -0.1445139425 
## [8,] 0.041977235 0.003691257 0.0790876720 -0.0287987652 
## [9,] -0.006708339 -0.108069053 0.0224793104 -0.0215644677 
## [10,] -0.222914203 -0.333245026 -0.0088473138 0.6595202885 
## [11,] 0.125967085 0.053978034 0.0219907639 -0.0127675269 
## [12,] -0.493390931 0.397637825 0.2996535631 0.1257090650 
## [13,] 0.227884864 -0.535907054 -0.4003644518 -0.1379027214 
## [14,] -0.118408925 -0.138393553 -0.0442739129 -0.0146585885 
## [15,] -0.044753978 0.033637374 -0.0276925959 0.0015559738 
## [16,] -0.017762823 0.094645692 0.0006321628 0.0121006424 
## [17,] 0.080492345 0.028928446 0.0196597216 0.0002181715 
## [18,] 0.023443061 -0.010554663 -0.0423359074 0.0294920872 
## [19,] -0.048131033 -0.110724985 -0.0505082254 0.0321528848 
## [20,] -0.669930794 -0.258696902 -0.3338816069 0.0097678374 
## [21,] 0.313407571 -0.132317208 0.2623342242 0.6434307976

4 因子数确定

4.1 1.bartlett 球体检验

运行程序:

msa.bartlett(data1) #bartlett 球体检验 

运行结果:

R was not square, finding R from data 
$chisq [1] 664.7 
$df [1] 210 
$p.value [1] 1.154e-48 

根据bartelett球体检验显示,P值小于0.05,拒绝相关矩阵是单位阵的原假设, 数据适合做因子分析。

4.2 碎石图及方差累计贡献率

运行程序:

caa<-(D.e$values)/sum(D.e$values) #方差贡献率 
ca<-cumsum(D.e$values)/sum(D.e$values)#累计方差贡献率 
par(mfrow=c(1,2)) #1×2 画布 
plot(1:21,caa,type = "o",pch=17,col=4,main="scree plot",xlab = "Compone
nt Number",ylab = "Eigen value") 
plot(1:21,ca,type = "o",pch=17,col=4,main="Comulative Contribution",xla
b = "Component Number",ylab = "Comulative Contribution") 

运行结果:

根据碎石图及累计方差贡献率图显示,当因子个数取6时较为适 合,方差累计贡献率超过80%。

5 因子载荷矩阵

5.1 方差贡献

运行程序:

source("G:\\msaR.R") 
Fp<-msa.fa(data1,m=6,rotation = "none") 
Fp$vars #方差贡献

运行结果:

## Variance Proportion Cumulative 
## Factor1 5.774 27.497 27.50 
## Factor2 3.980 18.951 46.45 
## Factor3 2.568 12.230 58.68 
## Factor4 2.353 11.205 69.88 
## Factor5 1.486 7.076 76.96 
## Factor6 1.256 5.981 82.94 

5.2共同度

运行程序:

Fp$common #共同度 

运行结果:

## X1 X2 X3 X4 X5 X6 X7 X8 X9 X1
0 X11 
## 0.4799 0.7788 0.5404 0.3909 0.8089 0.9713 0.7824 0.7656 0.8046 0.970
8 0.8553 
## X12 X13 X14 X15 X16 X17 X18 X19 X20 X2
1 ## 0.9637 0.9562 0.9362 0.9673 0.8850 0.9218 0.8393 0.8440 0.9818 0.973
0 

5.3 因子载荷

运行程序:

Fp$loadings #因子载荷

运行结果:

## Factor1 Factor2 Factor3 Factor4 Factor5 Factor6 
## X1 0.0612 -0.1278 0.0843 -0.1065 0.5076 0.4287 
## X2 0.5737 0.5575 0.2422 -0.1714 0.2159 0.0656 
## X3 0.3252 0.5097 -0.0549 -0.0083 0.4141 0.0180 
## X4 0.3894 0.4482 -0.0207 0.0968 -0.1154 0.1234 
## X5 0.6807 0.1165 0.4194 -0.0559 -0.1601 0.3569 
## X6 0.6522 0.0670 0.4359 0.3409 -0.3870 0.2924 
## X7 0.3093 -0.0202 0.3636 0.5168 -0.5269 0.0974 
## X8 0.1946 0.0439 -0.6753 0.4661 -0.0253 0.2276 
## X9 0.5031 -0.3411 0.5668 0.1030 -0.0453 -0.3182 
## X10 0.7467 -0.4721 -0.2405 -0.3457 -0.0815 0.0797 
## X11 0.0856 0.8505 -0.2238 -0.1565 -0.1361 -0.1778 
## X12 0.7280 0.6172 0.0552 0.0471 0.2179 -0.0071 
## X13 0.7338 0.5946 0.0830 -0.0272 0.2333 -0.0451 
## X14 0.4687 -0.1730 -0.4152 0.6817 0.0879 -0.2042 
## X15 0.7432 -0.4628 -0.3524 -0.2548 0.0828 -0.0687 
## X16 0.4602 -0.1937 0.3539 -0.1975 -0.0076 -0.6865 
## X17 0.4127 -0.0457 -0.4777 0.6877 0.0807 -0.2043 
## X18 -0.1054 -0.7125 0.3113 0.2504 0.3227 0.2383 
## X19 -0.0734 0.3133 -0.4855 -0.4662 -0.5280 0.0924 
## X20 -0.7679 0.4820 0.2464 0.3106 0.0227 -0.0452 
## X21 -0.7177 0.5025 0.2499 0.3511 0.0973 -0.1010 

当因子个数取为6个时,所保留的因子能够解释的方差占整个方差 的82.94%,基本能全面反映出21项财务指标的信息,故选取6个公共因 子。由因子载荷矩阵可看出: x 10 x_{10} x10 经营净利润率(%)、 x 12 x_{12} x12 资产利润率 (%)、 x 13 x_{13} x13 资产净利率(%)、 x 15 x_{15} x15 净利润增长率(%)、 x 20 x_{20} x20 管理费用比 例(%)、 x 21 x_{21} x21财务费用比率(%)在因子Factor1上载荷相对较高; x 11 x_{11} x11经营毛利率(%)、 x 18 x_{18} x18主营业务成本比例(%)在因子Factor2上载荷相 对较高; x 8 x_{8} x8 每股盈余公积金(元)、 x 9 x_{9} x9每股净资产增长率(%)在因子 Factor3上载荷相对较高; x 14 x_{14} x14 主营业务收入增长率(%)、 x 17 x_{17} x17营业利润 增长率(%)在因子Factor4上载荷相对较高; x 1 x_{1} x1 流动比率(<2偏低)、 x 7 x_{7} x7 每股资本公积金(元)、 x 19 x_{19} x19 营业费用比例(%)在因子Factor5上载 荷相对较高; x 16 x_{16} x16 总资产增长率(%)在因子Factor6上载荷相对较高。 根据其线性组合情况考虑各因子分别表示公司消费能力的公共因子、 负债能力、发展能力、可持续发展能力、经营能力、生存能力,故考 虑从这6个方面衡量公司财务能力。

6 因子得分

6.1 因子得分矩阵

运行程序:

Fp$scores #因子得分矩阵

运行结果:

## Factor1 Factor2 Factor3 Factor4 Factor5 Factor6 
## 深深房A -0.4138 -0.8256 0.1788 -0.1608 0.2571 0.1232 
## 同人华塑 0.3733 -0.2325 -0.4077 0.7450 -0.0032 -1.6545 
## 南开戈德 -0.3653 -0.8492 -0.3009 0.2529 0.8208 0.8460 
## st 昌源 -3.2163 2.3411 1.1584 1.6168 0.5075 -0.5117 
## 山东巨力 -0.1665 -0.9703 0.4284 -0.3114 0.6303 -0.5514 
## 一汽夏利 0.0057 -0.4718 0.4306 -0.2135 0.4726 0.3061 
## 闽东电力 -0.1010 -0.4373 1.6309 0.9224 -1.4426 0.9027 
## 深本实 b -0.2042 -0.2539 -0.4842 -0.3974 -0.1010 -0.2175 
## st 啤酒花 -1.6127 0.3350 -3.0826 -1.2720 -0.0402 0.6354 
## 云大科技 -0.7198 -0.3390 0.0030 -0.6483 -1.0559 0.6859 
## 中天科技 0.2078 -0.3361 0.4419 -0.1571 -0.6900 0.2253 
## 爱建股份 1.2328 -0.2998 -2.0373 3.4638 0.3097 -0.1838 
## st 轻骑 0.2110 -1.0573 0.7927 -0.3677 0.4999 -2.8471 
## 张裕 A 2.0838 2.6058 0.2198 0.0019 -0.7342 1.0978 
## 阿继电器 -0.0600 -0.0037 0.0475 -0.6257 -0.8688 -0.0915 
## 广州浪奇 0.0783 -0.3960 -0.3029 0.0459 0.0466 0.3097 
## 浙江震元 0.3614 -0.3640 0.6544 0.3446 -0.5232 0.7923 
## 四环生物 1.2369 1.9140 0.2551 -1.1165 2.4581 -0.7077 
## 深宝安 A -0.0505 0.1374 -0.6893 -0.3240 -0.3792 -0.4315 
## 深发展 A 0.3946 0.7847 -0.6463 -1.1460 -1.7981 -1.1531 
## 数码网络 0.1057 -0.7449 0.3207 -0.4372 2.2411 1.9303 
## 中色建设 0.4367 -0.3644 0.8242 -0.1409 -0.0238 -0.0199 
## 东北药 0.1820 -0.1722 0.5647 -0.0749 -0.5834 0.5150 

6.2 前两个因子得分信息图

运行程序:

plot(Fp$scores,asp=1) 
abline(h=0,v=0,lty=3,col="red") 
text(Fp$scores,labels = row.names(data1)) #前两个因子得分信息图 

运行结果:

由因子得分图可以看出,张裕 A、四环生物、爱建股份在第一因子 Factor1 上得分取正值且相对较大,而 st 昌源、st 啤酒花在第一因子 Factor1 上的得分值相对较小;张裕 A、st 昌源、四环生物在第二因子 Factor2 上得分取正值且相对较大,而 st 轻骑、山东巨力在第二因子 Factor2 上的得分值相对较小。

6.3 前两个因子信息重叠图

运行程序:

biplot(Fp$scores[,1:2],Fp$loadings[,1:2]) #前两个因子信息重叠图 

运行结果:

以公因子 Factor1、Factor2 分别为横纵坐标轴,绘制出各个公司 的因子得分图,前面的分析结果可以在因子得分图上得到直观地反 映。

7 因子旋转及结果比较

7.1 旋转后方差贡献

运行程序:

Fp1<-msa.fa(data1,m=6,rotation = "varimax") #最大方差法进行因子旋转 
Fp1$vars #旋转后方差贡献 

运行结果:

## Variance Proportion Cumulative 
## Factor1 4.243 20.203 20.20 
## Factor2 4.078 19.418 39.62 
## Factor3 2.576 12.266 51.89 
## Factor4 2.447 11.653 63.54 
## Factor5 2.202 10.484 74.03 
## Factor6 1.872 8.914 82.94 

7.2 旋转后共同度

运行程序:

Fp1$common #旋转后共同度

运行结果:

## X1 X2 X3 X4 X5 X6 X7 X8 X9 X1
0 X11 
## 0.4799 0.7788 0.5404 0.3909 0.8089 0.9713 0.7824 0.7656 0.8046 0.970
8 0.8553 
## X12 X13 X14 X15 X16 X17 X18 X19 X20 X21 
## 0.9637 0.9562 0.9362 0.9673 0.8850 0.9218 0.8393 0.8440 0.9818 0.973
0 

7.3 旋转后因子载荷

运行程序:

Fp1$loadings #旋转后因子载荷

运行结果:

## Factor1 Factor2 Factor3 Factor4 Factor5 Factor6 
## X1 0.1449 0.1916 -0.1608 -0.1311 -0.5532 -0.2704 
## X2 0.0953 0.8422 -0.1537 0.1645 0.0214 0.0970 
## X3 -0.0409 0.7100 0.0984 -0.1438 -0.0395 -0.0515 
## X4 0.0187 0.4849 0.1124 0.2903 0.2165 -0.1077 
## X5 0.3345 0.4555 -0.2018 0.6581 -0.1211 0.0336 
## X6 0.1636 0.2771 0.0842 0.9207 -0.0749 0.0861 
## X7 -0.0894 -0.0637 0.2109 0.8386 0.0362 0.1460 
## X8 0.1410 0.0446 0.7086 0.0268 0.1027 -0.4800 
## X9 0.2397 0.0399 -0.0038 0.4133 -0.2779 0.7053 
## X10 0.9721 0.0541 0.0638 0.1081 -0.0196 0.0824 
## X11 -0.2381 0.5805 -0.0078 -0.1099 0.6645 -0.0896 
## X12 0.1202 0.9327 0.1652 0.1916 0.0853 0.0899 
## X13 0.1542 0.9324 0.1070 0.1558 0.0852 0.1418 
## X14 0.1921 0.0689 0.9285 0.1168 -0.0927 0.1012 
## X15 0.9324 0.1007 0.2401 -0.0618 -0.0574 0.1516 
## X16 0.2941 0.1211 -0.0495 0.0286 0.0466 0.8822 
## X17 0.1094 0.1197 0.9428 0.0732 -0.0057 0.0359 
## X18 0.0825 -0.4129 0.0183 0.0912 -0.8066 0.0520 
## X19 0.2019 -0.0339 -0.1998 -0.0889 0.7823 -0.3772 
## X20 -0.9695 -0.0776 -0.1127 -0.0795 0.0598 -0.1152 
## X21 -0.9770 -0.0108 -0.0533 -0.1073 0.0241 -0.0589

7.4 旋转后前两个因子得分信息图

运行程序:

plot(Fp1$scores,asp=1) 
abline(h=0,v=0,lty=3,col="red") 
text(Fp1$scores,labels = row.names(data1)) #旋转后前两个因子得分信息图 

运行结果:

7.5 旋转后前两个因子信息重叠图

运行程序:

biplot(Fp1$scores[,1:2],Fp1$loadings[,1:2]) #旋转后前两个因子得分信息重叠图 

运行结果:

利用最大方差法对因子进行旋转后可以发现,各因子载荷差别较 大,更易体现公因子解释能力,公共因子Factor1在 x 10 x_{10} x10经营净利润率 (%)、 x 15 x_{15} x15 净利润增长率(%)、 x 20 x_{20} x20 管理费用比例(%)、 x 21 x_{21} x21财务费用 比率(%)上的载荷值相对较大,可视为反映公司消费能力的公共因 子;Factor2在 x 2 x_{2} x2速动比率(<1偏低)、 x 3 x_{3} x3 现金流动负债比(%)、 x 4 x_{4} x4 每 股收益(元)、 x 12 x_{12} x12资产利润率(%)、 x 13 x_{13} x13 资产净利率(%)上的载荷值 相对较大,可视为反映公司负债能力的公共因子;Factor3在 8 x 每股盈 余公积金(元)、 x 17 x_{17} x17 营业利润增长率(%)上的载荷值相对较大,可视 为反映公司发展能力的公共因子;Factor4在 x 5 x_{5} x5 每股未分配利润 (元)、 x 6 x_{6} x6每股净资产(元)、 x 7 x_{7} x7 每股资本公积金(元)上的载荷值 相对较大,可视为反映公司可持续发展能力的公共因子;Factor5在 x 1 x_{1} x1 流动比率(<2偏低)、 x 11 x_{11} x11 经营毛利率(%)、 x 18 x_{18} x18主营业务成本比例 (%)、 x 19 x_{19} x19 营业费用比例(%)上的载荷值相对较大,可视为反映公司 经营能力的公共因子;Factor6在 x 9 x_{9} x9 每股净资产增长率(%)上的载荷 值相对较大,可视为反映公司生存能力公共因子。

从旋转后的前两个因子得分图可以看出,四环生物、张裕A在公因 子Factor 2上得分排名相对靠前,即其负债能力相对更强;数码网络 在公因子Factor上得分相对靠前,即其消费能力相对更强。

8 排序

8.1 旋转前综合得分排序

运行程序:

Fp$ranks #旋转前综合得分排序 

运行结果:

## Factor Rank 
## 深深房A -0.2903 21 
## 同人华塑 -0.0084 10 
## 南开戈德 -0.1943 17 
## st 昌源 -0.1358 13 
## 山东巨力 -0.2418 18 
## 一汽夏利 -0.0089 11 
## 闽东电力 0.1737 6 
## 深本实 b -0.2751 20 
## st 啤酒花 -1.0421 23 
## 云大科技 -0.4438 22 
## 中天科技 -0.0066 9 
## 爱建股份 0.5209 3 
## st 轻骑 -0.2671 19 ## 张裕 A 1.3355 1 
## 阿继电器 -0.1790 15 
## 广州浪奇 -0.0767 12 
## 浙江震元 0.1922 4 
## 四环生物 0.8929 2 
## 深宝安 A -0.1942 16 
## 深发展 A -0.1765 14 
## 数码网络 0.1835 5 
## 中色建设 0.1605 7 
## 东北药 0.0815 8 

8.2 旋转前综合得分排序(按排名前后)

运行程序:

order1<-Fp$ranks[order(Fp$ranks[,1],decreasing = TRUE),] 
order1 #旋转前综合得分排序(按排名前后) 

运行结果:

## Factor Rank 
## 张裕 A 1.3355 1 
## 四环生物 0.8929 2 
## 爱建股份 0.5209 3 
## 浙江震元 0.1922 4 
## 数码网络 0.1835 5 
## 闽东电力 0.1737 6 
## 中色建设 0.1605 7 
## 东北药 0.0815 8 
## 中天科技 -0.0066 9 
## 同人华塑 -0.0084 10 
## 一汽夏利 -0.0089 11 
## 广州浪奇 -0.0767 12 
## st 昌源 -0.1358 13 
## 深发展 A -0.1765 14 
## 阿继电器 -0.1790 15 
## 深宝安 A -0.1942 16 
## 南开戈德 -0.1943 17 
## 山东巨力 -0.2418 18 
## st 轻骑 -0.2671 19 
## 深本实 b -0.2751 20 
## 深深房A -0.2903 21 
## 云大科技 -0.4438 22 
## st 啤酒花 -1.0421 23 

8.3 旋转后综合得分排序

运行程序:

Fp1$ranks #旋转后综合得分排序 

运行结果:

## Factor Rank 
## 深深房A -0.2692 18 
## 同人华塑 0.2876 5 
## 南开戈德 -0.3129 20 
## st 昌源 -1.1922 23 ## 山东巨力 -0.1759 17 
## 一汽夏利 -0.1214 15 
## 闽东电力 -0.1398 16 
## 深本实 b -0.0459 14 
## st 啤酒花 -0.4632 22 
## 云大科技 -0.2899 19 
## 中天科技 0.0626 9 
## 爱建股份 0.6190 2 
## st 轻骑 0.1251 6 
## 张裕 A 0.9903 1 
## 阿继电器 0.0414 11 
## 广州浪奇 -0.0036 13 
## 浙江震元 0.0553 10 
## 四环生物 0.4862 3 
## 深宝安 A 0.0961 7 
## 深发展 A 0.4767 4 
## 数码网络 -0.3483 21 
## 中色建设 0.0949 8 
## 东北药 0.0268 12## Factor Rank 
## 深深房A -0.2903 21 
## 同人华塑 -0.0084 10 
## 南开戈德 -0.1943 17 
## st 昌源 -0.1358 13 
## 山东巨力 -0.2418 18 
## 一汽夏利 -0.0089 11 
## 闽东电力 0.1737 6 
## 深本实 b -0.2751 20 
## st 啤酒花 -1.0421 23 
## 云大科技 -0.4438 22 
## 中天科技 -0.0066 9 
## 爱建股份 0.5209 3 
## st 轻骑 -0.2671 19 ## 张裕 A 1.3355 1 
## 阿继电器 -0.1790 15 
## 广州浪奇 -0.0767 12 
## 浙江震元 0.1922 4 
## 四环生物 0.8929 2 
## 深宝安 A -0.1942 16 
## 深发展 A -0.1765 14 
## 数码网络 0.1835 5 
## 中色建设 0.1605 7 
## 东北药 0.0815 8 

8.2 旋转后综合得分排序(按排名前后)

运行程序:

order2<-Fp1$ranks[order(Fp1$ranks[,1],decreasing = TRUE),] 
order2 #旋转后综合得分排序(按排名前后)

运行结果:

## Factor Rank 
## 张裕 A 0.9903 1 
## 爱建股份 0.6190 2 
## 四环生物 0.4862 3 
## 深发展 A 0.4767 4 
## 同人华塑 0.2876 5 
## st 轻骑 0.1251 6 
## 深宝安 A 0.0961 7 
## 中色建设 0.0949 8 
## 中天科技 0.0626 9 
## 浙江震元 0.0553 10 
## 阿继电器 0.0414 11 
## 东北药 0.0268 12 
## 广州浪奇 -0.0036 13 
## 深本实 b -0.0459 14 
## 一汽夏利 -0.1214 15 
## 闽东电力 -0.1398 16 
## 山东巨力 -0.1759 17 
## 深深房A -0.2692 18 
## 云大科技 -0.2899 19 
## 南开戈德 -0.3129 20 
## 数码网络 -0.3483 21 ## st 啤酒花 -0.4632 22 
## st 昌源 -1.1922 23 
## Factor Rank 
## 张裕 A 1.3355 1 
## 四环生物 0.8929 2 
## 爱建股份 0.5209 3 
## 浙江震元 0.1922 4 
## 数码网络 0.1835 5 
## 闽东电力 0.1737 6 
## 中色建设 0.1605 7 
## 东北药 0.0815 8 
## 中天科技 -0.0066 9 
## 同人华塑 -0.0084 10 
## 一汽夏利 -0.0089 11 
## 广州浪奇 -0.0767 12 
## st 昌源 -0.1358 13 
## 深发展 A -0.1765 14 
## 阿继电器 -0.1790 15 
## 深宝安 A -0.1942 16 
## 南开戈德 -0.1943 17 
## 山东巨力 -0.2418 18 
## st 轻骑 -0.2671 19 
## 深本实 b -0.2751 20 
## 深深房A -0.2903 21 
## 云大科技 -0.4438 22 
## st 啤酒花 -1.0421 23 

由程序运行结果显示,在这23个上市企业财务状况中,因子旋转 前后综合财务状况排名前三的公司分别为张裕A、四环生物、爱建股 份;因子旋转前,深深房A、云大科技、st啤酒花排名最后,因子旋转 后,数码网络、st啤酒花、st昌源排名最后。可以发现因子旋转前 后,公司排名前后虽然有细微变化,但变化差别不大,因子旋转后, 各公因子对公司财务能力更易解释。

相关推荐
chengxuyuan1213_3 分钟前
python常用基础语法
开发语言·windows·python
山山而川粤35 分钟前
美食推荐系统|Java|SSM|JSP|
java·开发语言·后端·学习·mysql
AC使者36 分钟前
讲解机器学习中的 K-均值聚类算法及其优缺点。
算法·机器学习·均值算法
#sakura41 分钟前
javaEE
java·开发语言·java-ee
arong_xu42 分钟前
Modern C++ std::atomic简介
开发语言·c++·atomic
wowing-1 小时前
Kotlin快速入门
开发语言·kotlin
无水先生1 小时前
集成技术综合指南:Bagging 和 Boosting
人工智能·算法·机器学习
浮生如梦_1 小时前
C#Halcon图像处理畸变校正之曲面校正
图像处理·人工智能·算法·c#·视觉检测
AI人H哥会Java1 小时前
【Spring】基于XML的Spring容器配置——Bean的作用域
java·开发语言·后端·spring·架构