练习R语言:fa.parallel()与fa()函数实现因子分析

原创 数据小兵  2021-11-05 09:40  阅读 285 次
数据小兵成长记

现在我们基于pop、school、employ、services、house五个指标来对12个地区进行综合评价,希望能抽取少数几个公因子来阐述指标的内部结构。

R语言psych包fa.parallel()函数执行平行检验,咱们来看提取几个公因子合适呢?

library(psych)

fa.parallel(data,fa="fa",n.iter = 100,fm="pa")

平行检验法,是会生成一组随机数据的矩阵,这些矩阵和真实案例数据矩阵有相同的变量个数和被试个数,并计算这组随机数据矩阵的平均特征值,最后通过比较真实数据中特征值的碎石图和这组随机矩阵的平均特征值的曲线,我们可以找到两条特征值曲线的交点,如果真实数据特征值低于随机数据的平均特征值了,那么说明没有保留的价值。

所以对于上图,高于模拟平均特征值的真实特征值有两个,所以考虑从5个指标中提取两个公因子。

接下来,咱们将采用主轴法来提取2个公因子。并强制进行varimax最大方差正交旋转。

f.us12 <- fa(data,nfactors = 2,rotate = "varimax",fm="pa")

来看结果:

h2就是共同度,两个公因子能解释各自变量的能力还是很不错的。

两个公因子累计方差贡献达到90%。

综合认为提取两个公因子尚可。

再来一个可视化图形辅助观察两个公因子的效果:

fa.diagram(f.us12,simple = T)

看图:

路径系数就是载荷系数,这个路径图我们可以非常清晰地观察到5个指标分别归属于哪个公因子,这样有利于对每个公因子进行命名。

PA1:服务因子
PA2:人口因子

本文完
文/图=数据小兵

 

更多R统计文章
练习R:单个连续数据的探索性统计可视化函数EDA
练习R:用lm.ridge()做岭回归分析,可惜无法输出R平方
练习R:lm+plot+abline+text四函数绘制线性拟合散点图
练习R:用lm.ridge()做岭回归分析,可惜无法输出R平方
练习R:分类自变量的线性回归
练习R:factor函数为有序分类变量创建值标签
学习R:识别缺失值与将指定数据编码为缺失值
练习R:car包recode函数多分类变量的重新编码
练习R:stepAIC多元逐步回归
练习R:用3d空间图展示多元线性回归模型
练习R:用3d空间图展示多元线性回归模型
练习R:dplyr包arrange函数排序
练习R:DoE.base包生成标准L9-3-4正交表
练习R:正交试验极差分析、方差分析与统计图形
练习R:rsm包设计响应面试验并做数据分析
练习R:interaction.plot()函数绘制交互作用图
练习R:influencePlot()函数发现离群点杠杆点强影响点
练习R:glm()函数连续自变量的二项logistic回归
练习R:spss.get()函数读取SPSS数据集
练习R:lrtest()函数做logistic回归全局显著性检验
练习R:qqnorm+t.test函数配对t检验
练习R:TukeyHSD()+plot()函数实现多重比较森林图
练习R:pwr.t.test()函数实现独立t检验样本量计算
练习R:qcc.overdispersion.test()函数检验等离散性
本文地址:http://www.datasoldier.net/archives/3373
版权声明:本文为原创文章,版权归 数据小兵 所有,欢迎分享本文,转载请保留出处!
视频课程《SPSS统计分析:从入门到实践提高》
欢迎订阅SPSS训练营微信公众号

评论已关闭!