乐趣区

关于数据挖掘:R语言中实现sem进行结构方程建模和路径图可视化附代码数据

原文链接:http://tecdat.cn/?p=23312

最近咱们被客户要求撰写对于构造方程建模的钻研报告,包含一些图形和统计输入。

构造方程模型是一个线性模型框架,它对潜变量同时进行回归方程建模

引言

 诸如线性回归、多元回归、路径分析、确认性因子分析和构造回归等模型都能够被认为是 SEM 的特例。在 SEM 中可能存在以下关系。

  • 察看到的变量与察看到的变量之间的关系(γ,如回归)。
  • 潜变量与察看变量(λ,如确认性因子分析)。
  • 潜变量与潜变量(γ,β,如构造回归)。

SEM 独特地蕴含了测量和构造模型。测量模型将观测变量与潜变量分割起来,构造模型将潜变量与潜变量分割起来。目前有多种软件解决 SEM 模型,包含 Mplus、EQS、SAS PROC CALIS、Stata 的 sem 和最近的 R 的 lavaan。R 的益处是它是开源的,能够收费应用,而且绝对容易应用。

本文将介绍属于 SEM 框架的最常见的模型,包含

  • 简略回归
  • 多元回归
  • 多变量回归
  • 路径分析
  • 确认性因素剖析
  • 构造回归

目标是在每个模型中介绍其

  • 矩阵表述
  • 门路图
  • lavaan 语法
  • 参数和输入

在这次训练完结时,你应该可能了解这些概念,足以正确辨认模型,意识矩阵表述中的每个参数,并解释每个模型的输入。

语法简介

语法一:f3~f1+f2(门路模型)

构造方程模型的门路局部能够看作是一个回归方程。而在 R 中,回归方程能够示意为 y~ax1+bx2+c,“~”的右边的因变量,左边是自变量,“+”把多个自变量组合在一起。那么把 y 看作是内生潜变量,把 x 看作是外生潜变量,略去截距,就形成了语法一。

语法二:f1 =~ item1 + item2 + item3(测量模型)

“=~” 的右边是潜变量,左边是观测变量,整句了解为潜变量 f1 由观测变量 item1、item2 和 item3 体现。

语法三:item1 item1 , item1 item2

“~~” 的两边雷同,示意该变量的方差,不同的话示意两者的协方差

语法四:f1 ~ 1

示意截距

基础知识

加载数据

在这种状况下,咱们将模仿数据。

y ~ .5*f  #有内部规范的回归强度


f =~ .8*x1 + .8*x2 + .8*x3 + .8*x4 + .8*x5  #定义因子 f,在 5 个我的项目上的载荷。x1 ~~ (1-.8^2)*x1 #残差。请留神,通过应用 1 平方的载荷,咱们在每个指标中实现了 1.0 的总变异性(标准化的)。......

#产生数据;留神,标准化的 lv 是默认的
simData 

#看一下数据
describe(simData)[,1:4]

指定模型

y ~ f # "~ 回归"
f =~ x1+ x2 + x3 + x4 + x5 # "=~ 被测量的是"
x1 ~~ x1 # 方差
x2 ~~ x2 #方差
x3~~x3 #变量
x4~~x4 #变量
x5~~x5 #变量
#x4~~x5 将是协方差的一个例子 

拟合模型

summary(model_m)
inspect(model_m)
Paths

路径分析

与上述步骤雷同,但次要侧重于回归门路。值得注意的是这种办法对调节剖析的效用。


点击题目查阅往期内容

R 语言: 构造方程模型、潜变量剖析

左右滑动查看更多

01

02

03

04

## 加载数据
set.seed(1234)

Data <- data.frame(X = X, Y = Y, M = M)

指定模型

 # 间接效应
             Y ~ c*X #应用字符来命名回归门路
           # 调节变量
             M ~ a*X
             Y ~ b*M
           # 间接效应 (a*b)
             ab := a*b #定义新参数
           # 总效应
             total := c + (a*b) #应用 ":=" 定义新参数 

拟合模型

summary(model_m)
Paths(model)

间接效应的 Bootstrapping 置信区间

除了指定对 5000 个样本的标准误差进行 bootstrapping 外,上面的语法还指出标准误差应进行偏差校对(但不是 accelearted)。这种办法将产生与 SPSS 中的 PROCESS 宏程序相似的后果,即对标准误差进行偏差修改。

sem(medmodel,se = "bootstrap")

确认性因素剖析

加载数据

咱们将应用例子中的雷同数据

指定模型

'
f =~ x1 + x2 + x3 +x4 + x5
x1~~x1
x2~~x2
x3~~x3
x4~~x4
x5~~x5
'

拟合模型

sem(fit, simData)
Paths(fit)
anova

正如各模型的 LRT 所示,sem() 和 cfa() 是具备雷同默认值的软件包。CFA 能够很容易地应用 cfa() 或 sem() 实现 构造方程模型

加载数据

在这种状况下,我将模仿数据。

# 构造成分
y ~ .5*f1 + .7*f2 #用内部规范回归的强度


#测量局部
f1 =~ .8*x1 + .6*x2 + .7*x3 + .8*x4 + .75*x5 #定义因子 f,在 5 个我的项目上的载荷。x1 ~~ (1-.8^2)*x1 #残差。留神,通过应用 1 平方的载荷,咱们实现了每个指标的总变异性为 1.0(标准化)。...

#生成数据;留神,标准化的 lv 是默认的
sim <- sim(tosim)

#看一下数据
describe(sim)

  

指定模型

测试正确的模型

# 结构性
y ~ f1+ f2
#测量
f1 =~ x1 + x2 + x3 + x4 + x5 
f2 =~ x6 + x7

测试不正确的模型。假如咱们谬误地认为 X4 和 X5 负载于因子 2。

incorrect
#结构性
y ~ f1+ f2
#测量
f1 =~ x1 + x2 + x3 
f2 =~ x6 + x7 + x4 + x5

拟合模型

正确的模型

summary(model_m)

不正确的模型

summary(incorrectmodel_m, fit.measures = TRUE)

比拟模型

正确模型

 不正确模型

Paths(incorrec)
anova

除了不正确模型的整体拟合指数较差 – 如 CFI<0.95,RMSEA>0.06,SRMR>0.08 和 Chi-square test<0.05 所示,正确模型也优于不正确模型,如正确模型的 AIC 和 BIC 低得多所示。

点击文末 “浏览原文”

获取全文残缺材料。

本文选自《R 语言中实现 sem 进行构造方程建模和门路图可视化》。

点击题目查阅往期内容

构造方程模型 SEM 剖析心理学和营销钻研数据门路图可视化构造方程模型 SEM、路径分析房价和犯罪率数据、预测智力影响因素可视化 2 案例
构造方程模型 SEM 多元回归和模型诊断剖析学生测试问题数据与可视化
在 R 语言中实现 sem 进行构造方程建模和门路图可视化
R 语言构造方程 SEM 中的 power analysis 效力测验剖析 stata 如何解决构造方程模型(SEM)中具备缺失值的协变量
R 语言基于协方差的构造方程拟合的卡方测验
R 语言基于协方差的 SEM 构造方程模型中的拟合指数
R 语言: 构造方程模型、潜变量剖析
R 语言对用电负荷工夫序列数据进行 K -medoids 聚类建模和 GAM 回归
R 语言进行反对向量机回归 SVR 和网格搜寻超参数优化
R 语言贝叶斯 MCMC:用 rstan 建设线性回归模型剖析汽车数据和可视化诊断
R 语言深度学习:用 keras 神经网络回归模型预测工夫序列数据
R 语言贝叶斯 MCMC:GLM 逻辑回归、Rstan 线性回归、Metropolis Hastings 与 Gibbs 采样算法实例
R 语言应用虚构变量 (Dummy Variables) 回归剖析工资影响因素

退出移动版