验证性因子分析(Confirmatory Factor Analysis) – R 语句

因子分析(factor analysis)可分为探索性因子分析法(Exploratory Factor Analysis,EFA)和验证性因子分析(Confirmatory Factor Analysis,CFA)两类,借助SPSS只能进行探索性因子分析。在R中,通过lavaan包(Latent Variable Analysis Package)可以进行验证性因子分析,本文将以一个简单的分析例子,讲述如何用R进行CFA。

#####################################################################
 
library(readxl) #####载入可以读取EXCEL文件的包####
data = read_excel("C:/.../data.xlsx") #####读取EXCEL数据文件#####
library(lavaan) #####载入lavaan包#####
 
 
#####假设需要验证的模型有4个维度,每个维度分别有五道题,构建CFA模型########
HS.model = ' D1 =~ Q01 + Q02 + Q03 + Q04 + Q05  
D2 =~ Q06 + Q07 + Q08 + Q09 + Q10                 
D3 =~ Q11 + Q12 + Q13 + Q14 + Q15
D4 =~ Q16 + Q17 + Q18 + Q19 + Q20 '                         
 
fit = cfa(HS.model, data=data, sample.cov = TRUE)  ####进行验证性因子分析##
 
fitMeasures(fit)  #提取各拟合指标#
 
fitMeasures(fit, c("chisq","df","pvalue","rmr","rmsea","gfi","agfi","nfi","rfi","ifi","tli","cfi")) ##提取特定的分析结果###
 
summary(fit, standardized = TRUE, fit.measures=TRUE, modindices = TRUE) #提取各项指标#
 
parameterEstimates(fit)   #提取未标准化各因子载荷#
 
standardizedSolution(fit)  #提取标准化各因子载荷#
 
fitted(fit)   #提取协方差矩阵#
 
inspectSampleCov(HS.model, data=data) #提取样本协方差矩阵#
 
lavInspect(fit, "cov.all")    #提取所有元素的协方差矩阵#
 
lavInspect(fit, "cor.all")    #提取所有元素的相关矩阵#
 
resid(fit, type="standardized")   #提取标准化的残差矩阵#
 
modindices(fit) #提取修正指数#
 
 
###########END#################

发表评论

您的电子邮箱地址不会被公开。