【多元统计分析及R语言建模】【详解】因子分析法综合应用(教材P271页表9-4): 1. 计算样本相关系数矩阵R、特征根、特征向量。2. 确定因子的个数,并解释这些因子的含义。计算各因子得分并解释

1、题目

因子分析法综合应用(教材P271页表9-4):

  1. 计算样本相关系数矩阵R、特征根、特征向量。
    引入nFactors包,使用eigen()函数求特征值与特征向量。
    library(nFactors)
    ev <- eigen(cor(mydata)) # 获取特征值
    print(ev)

  2. 确定因子的个数,并解释这些因子的含义。计算各因子得分,画出前两个因子的得分图并解释。
    使用两种方法:极大似然估计,调用factanal()函数;主因子法,调用fa()函数;
    注意:过程参照教材251-255页。fa()函数的调用和上次实验相同。选择不旋转。factanal()函数的参数 rotation=“none”,fa()函数的参数rotate=“none”

  3. 对因子进行旋转,并解释这些因子的含义。计算各因子得分,画出前两个因子的得分图并解释。
    要求和上面相同,但是选择旋转。 factanal()函数的参数 rotation=" varimax “,fa()函数的参数rotate=” varimax"

2、题目详解

2.1 计算样本相关系数矩阵R、特征根、特征向量。

library(xlsx) #导包
data = read.xlsx("C:\\Users\\6\\Desktop\\R语言\\实验3\\23个企业财务数据.xlsx",'Sheet1',row.names=T) #读数据
data
X = data.frame(data)
R = cor(X);R #计算相关系数矩阵
library(nFactors)
ev<- eigen(R)
print(ev) # 计算特征根及特征向量

第一个题目简单且截图内容较冗余,故不展示。

2.2 确定因子的个数,并解释这些因子的含义。计算各因子得分,画出前两个因子的得分图并解释。

factanal(data, 7, rotation = "none")  #获取计算因子对象
Fa = msa.fa(data,m=7,rotation = 'none')#计算因子对象(未旋转)
Fa$scores #  #获取各因子得分
Fa1 = msa.fa(data,m=2,rotation = 'none')  #计算前两个因子的因子对象
plot(Fa1$scores,asp = 1);abline(h=0,v=0,lty=2) #绘图
text(Fa1$scores,labels = rownames(data))
biplot(Fa$scores,Fa$loadings)#因子信息重叠图
abline(h=0,v=0,lty=2)

在这里插入图片描述
在这里插入图片描述

在第一行代码中需要确定因子的个数,确定方法为:看第n个因子包含的信息总量(即其累计方差贡献率不低于80%),第一行代码的参数7可以随便设置,但必须大于7
得出的结论是: 前6个因子的方差贡献率已经占到了累计方差贡献率的77.2%,前7个因子的方差贡献率已经达到了82.9%,因此只要取前7个因子就可以很好地概括原始指标。
因子的含义: 从旋转前的因子载荷矩阵中可以看出,因子Factor1(简称F1,下同)在x5,x6,x10上的载荷量较大,可视为反映企业利润的因子。F2在x11,x20,x21上的载荷量较大,可视为反映企业在经营与其他方面费用支出占比的因子。F3在x7上的载荷量较大,反映了企业每股资本公积金。F4在x8,x14,x17的载荷量较大,代表了企业的主营营收的能力。F5……,F6……,F7……
每个人的专业领域不同,因子会有不同的看法,此处只展示个人部分的看法,若有更好的见解可在评论区交流。
得分图:
在这里插入图片描述
在这里插入图片描述
由上图因子得分图可知,张裕A、四环生物、深发展在第一因子Factor1和第二因子Factor2上的得分取正值且相对较大,爱建股份在第一因子Factor1上取正值且相对较大在第二因子Factor2上虽取负值但相对较小,所以排名靠前,而st昌源和st啤酒花在第一因子Factor1上取负值且相对较大,所以排名靠后。其余在因子Factor1、因子Factor2上的得分在中间的企业反映在因子得分图上是出现在离原子不远的因子Factor1轴或者Factor2轴上。

2.3 对因子进行旋转,并解释这些因子的含义。计算各因子得分,画出前两个因子的得分图并解释。

factanal(data, 7, rotation = "varimax")  #获取计算因子对象
Fa2 = msa.fa(data,m=7,rotation = 'varimax') #计算因子对象(旋转)
Fa2$scores
Fa3 = msa.fa(data,m=2,rotation = 'varimax')
plot(Fa3$scores,asp = 1);abline(h=0,v=0,lty=2)
text(Fa3$scores,labels = rownames(data))
biplot(Fa2$scores,Fa2$loadings)#因子信息重叠图
abline(h=0,v=0,lty=2)

在这里插入图片描述
在这里插入图片描述

解释: 在旋转后可以看出,各因子所代表的含义非常明显。F1在x10,x15,x20,x21上的载荷量较大,代表了企业的盈利能力。F2在x2,x3,x12,x13的载荷量较大,代表了企业的营利能力。F3在x8,x14,x17的载荷量较大,体现了企业的短期偿债能力。F4在x5,x6的载荷量较大,反映了企业给予股东的回报。F5……,F6……,F7……因子旋转之后能够更好解释每个因子,同时旋转后的因子所表示的含义也与旋转前的因子大有不同。
在这里插入图片描述
在这里插入图片描述
解释: 从因子分析图中可以得出,张裕A、四环生物、爱建股份在第一因子Factor1及第二因子Factor2上的得分取正值且相对较大。st昌源在第二因子上的得分虽然为正,但在第一因子Factor上的得分最低,说明它的企业盈利能力较弱。其余在因子Factor1、因子Factor2上的得分位于中间的企业反映在因子得分图上是出现在离原子不远的因子Factor1轴或者Factor2轴上。

3、网盘

网盘内包括数据及源代码:链接:https://pan.baidu.com/s/1IwkoQigrrb3pzN6PWPGHHA
提取码:8888

  • 8
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值