• R语言 EFA(探索性因子分析)


    EFA的目标是通过发掘隐藏在数据下的一组较少的、更为基本的无法观测的变量,来解释一组可观测变量的相关性。这些虚拟的、无法观测的变量称作因子。(每个因子被认为可解释多个观测变量间共有的方差,也叫作公共因子)
    模型的形式为:
    Xi=a1F1+a2F2+……apFp+Ui
    Xi是第i个可观测变量(i=1,2,……k)
    Fj是公共因子(j=1,2,……p)
    并且p<k
    options(digits=2)
    covariances<-ability.cov$cov
    correlations<-cov2cor(covariances) #转化为相关矩阵
    correlations
    

      

    ability.cov提供了变量的协方差矩阵

    cov2cor()函数将其转化为相关系数矩阵本

    1.  判断需提取的公共因子数
    1   fa.parallel(correlations,n.obs=112,fa="both",n.iter=100,main="Scree plots with parallel analysis")  

    fa="both",则显示PCA和EFA两种线,如果选择fa="pc",则只会显示PCA的线,如果fa="fa",则只会显示因子分析的线。

    若使用PCA方法,可能会选择一个成分或两个成分。当摇摆不定时,高估因子数通常比低估因子数的结果好,因为高估因子数一般较少曲解“真实”情况。

           2.提取公共因子(因子旋转会更有效)

        可使用fa()函数来提取因子,fa()函数的格式为:

               fa(r,nfactors=,n.obs=,rotate=,scores=,fm)

               r是相关系数矩阵或原始数据矩阵;

        nfactors设定提取的因子数(默认为1);

               n.obs是观测数(输入相关系数矩阵时需要填写);

               rotate设定放置的方法(默认互变异数最小法);

               scores设定是否计算因子得分(默认不计算);

               fm设定因子化方法(默认极小残差法)。

               与PCA不同,提取公共因子的方法很多,包括最大似然法(ml)、主轴迭代法(pa)、加权最小二乘法(wls)、广义加权最小二乘法(gls)和最小残差法(minres)。

    •    未旋转的主轴迭代因子法

                    fa<-fa(correlations,nfactors=2,rotate="none",fm="pa") 

    •    正交旋转,因子分析的重点在于因子结构矩阵(变量与因子的相关系数)

                    fa.varimax<-fa(correlations,nfactors=2,rotate="varimax",fm="pa") 

    •    斜交旋转,因子分析会考虑三个矩阵:因子结构矩阵、因子模式矩阵和因子关联矩阵。虽然斜交方法更为复杂,但模型将更加符合真实数据。

                    fa.promax<-fa(correlations,nfactors=2,rotate="promax",fm="pa")

            3.使用factor.plot()或fa.diagram()函数,可绘制正交或斜交结果的图形

            

    factor.plot(fa.promax,labels=rownames(fa.promax$loadings)) 

    fa.diagram(fa.promax,simple=TRUE)  
    

      

            4.因子得分

            EFA并不十分关注因子得分,在fa()函数中添加score=TRUE选项,便可轻松地得到因子得分。另外还可以得到得分系数(标准化的回归权重),它在返回对象的weights元素中。

             

    fa.promax$weights 

            

      程序猿必读

  • 相关阅读:
    Luogu P2391 白雪皑皑 && BZOJ 2054: 疯狂的馒头 并查集
    Luogu P3391 文艺平衡树(Splay or FHQ Treap)
    [笔记] 平衡树合集(Treap,Splay,替罪羊,FHQ Treap)
    P1353_[USACO08JAN]跑步Running 我死了。。。
    Luogu P1436 棋盘分割 暴力DP
    Luogu P1131 [ZJOI2007]时态同步 树形DP
    Luogu P1282 多米诺骨牌 DP。。背包?
    Luogu P1273 有线电视网 树形DP
    Luogu P1272 重建道路 树形DP
    Luogu P1156 垃圾陷阱 DP
  • 原文地址:https://www.cnblogs.com/longzhongren/p/4318691.html
Copyright © 2020-2023  润新知