R语言学习记录:因子分析的R实现

时间: 2018-08-09(学习时间)、2018-08-12(记录时间)
教程:知乎:Learn R | 数据降维之主成分分析(上)Learn R | 数据降维之因子分析(下) 作者:Jason
数据来源:《应用多元统计分析》 王学民 编著 P261-P262 习题8.5、8.6


因子分析

1.因子分析

使用psych包对数据进行因子分析。
其中,fa函数进行主成分分析,fa.parallel函数生成碎石图。

fa(r, nfactors=, n.obs=, rotate=, scores=, fm=) r:相关系数矩阵或原始数据矩阵,
nfactors:设定主提取的因子数(默认为1) n.obs:观测数(输入相关系数矩阵时需要填写)
rotate:设定旋转的方法(默认互变异数最小法) scores:设定是否需要计算因子得分(默认不需要)
fm:设定因子化方法(默认极小残差法)

提取公因子的方法(fm),方法包括: ml:最大似然法 pa:主轴迭代法 wls:加权最小二乘法 gls:广义加权最小二乘法
minres:最小残差法
(摘自教程

如:

 # 导入数据
> library(openxlsx)
> data1 <- read.xlsx("E:\\Learning_R\\因子分析\\exec8.5.xlsx",rows = 1:13, cols = 1:5 )
> head(data1)
  人口 教育 佣人 服务  房价
1 5700 12.8 2500  270 25000
2 1000 10.9  600   10 10000
3 3400  8.8 1000   10  9000
4 3800 13.6 1700  140 25000
5 4000 12.8 1600  140 25000
6 8200  8.3 2600   60 12000
> data1_cor <- cor(data1)
> head(cor(data1),3)
           人口       教育      佣人      服务       房价
人口 1.00000000 0.00975059 0.9724483 0.4388708 0.02241157
教育 0.00975059 1.00000000 0.1542838 0.6914082 0.86307009
佣人 0.97244826 0.15428378 1.0000000 0.5147184 0.12192599
# 生成碎石图
> library(psych)
> fa.parallel(data1_cor, n.obs = 112, fa = "both", n.iter = 100)
Parallel analysis suggests that the number of factors =  2  and the number of components =  2 

这里写图片描述
从图中和函数给出的信息可以看出,保留两个主成分即可。

# 因子分析
> fa_model1 <- fa(data1_cor, nfactors = 2, rotate = "none", fm = "ml")
> fa_model1
Factor Analysis using method =  ml
Call: fa(r = data1_cor, nfactors = 2, rotate = "none", fm = "ml")
Standardized loadings (pattern matrix) based upon correlation matrix
       ML2  ML1   h2    u2 com
人口 -0.03 1.00 1.00 0.005 1.0
教育  0.90 0.04 0.81 0.193 1.0
佣人  0.09 0.98 0.96 0.036 1.0
服务  0.78 0.46 0.81 0.185 1.6
  • 48
    点赞
  • 359
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值