全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
4343 7
2021-06-15
悬赏 10 个论坛币 已解决


非常希望能解答我的疑惑~

1. 本人目前一直在看学习如何R语言解决结构方程模型,具体来说有三个函数 lavaan(), sem() 和 cfa() 可以用来编程。但是看完了英文的帮助文档依然一头雾水,不知道区别在哪里,也不知道实际大家都是用哪个函数呢?
2. 另外 lavaan()这个函数的编程例子里面并没有提供 调节变量(moderator) 如何处理的问题??很多资料也都没有写。不知道这个是否真的支持 调节变量的分析。
非常感谢大家!

最佳答案

llb_321 查看完整内容

在这个包里,可以这样理解,lavaan是基本函数,提供全部参数设定可能,cfa和sem都是lavaan的马甲,只不过部分具体参数已经替你设定了。 三者的输出都是lavaan。 cfa是验证式因子分析模型,sem是常说的结构方程模型,应用上的差异主要体现在二者的第一个参数model通常是不同的,sem处理的model通常需要定义潜变量公式、回归公式和残差公式,而cfa处理的model只需要定义潜变量公式。 你说的第二个问题,不是lavaan的问题,而是 ...
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-6-15 18:25:20
在这个包里,可以这样理解,lavaan是基本函数,提供全部参数设定可能,cfa和sem都是lavaan的马甲,只不过部分具体参数已经替你设定了。
三者的输出都是lavaan。
cfa是验证式因子分析模型,sem是常说的结构方程模型,应用上的差异主要体现在二者的第一个参数model通常是不同的,sem处理的model通常需要定义潜变量公式、回归公式和残差公式,而cfa处理的model只需要定义潜变量公式。

你说的第二个问题,不是lavaan的问题,而是lavaan要处理的model的问题。理论上,都是变量,就看变量在公式中的什么位置及如何发挥作用。
我的理解是,结构方程模型的主要目的是潜变量,至于调节变量,如果需要的话,可以在“外层代码”结构上实现。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-6-17 02:11:54
纯路人,查了一下你说的这个东西,不知道这个答案能不能帮助你,关于区别
https://stats.stackexchange.com/questions/153590/is-structural-equation-modeling-sem-just-another-name-of-confirmatory-factor-a
关于使用
https://methodenlehre.github.io/SGSCLM-R-course/cfa-and-sem-with-lavaan.html#confirmatory-factor-analysis-cfa
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-6-17 21:12:51
llb_321 发表于 2021-6-17 14:06
在这个包里,可以这样理解,lavaan是基本函数,提供全部参数设定可能,cfa和sem都是lavaan的马甲,只不过部 ...
听完您的讲解让人豁然开朗!非常感谢!
但是针对第2个问题,lavaan的标准结构是:
library(lavaan)
model = '
ind60 =~ x1 + x2 + x3   # 左边的表示潜变量,右边表示用来度量这个潜变量的变量
dem60 =~ y1 + y2 + y3 + y4
dem65 =~ y5 + y6 + y7 + y8

dem60 ~ ind60                    ##表示回归,左边是因变量,右边是自变量
dem65 ~ ind60 + dem60            

y1 ~~ y5                         ##表示有相关关系
y2 ~~ y4                     
y3 ~~ y7
y4 ~~ y8
y6 ~~ y8
'
fit = sem(model, data = PoliticalDemocracy)
summary(fit, standardized = TRUE)
#画出路径图
library(semPlot)
semPaths(fit) #可以进行设置


很显然,符号 ~ 可以表示出中介变量结构(这个例子中 dem60是中介变量)
那么针对 调节变量的结构,要怎么表达呢?英文帮助文档里就没有出现过?

再次感谢您~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-6-17 21:14:24
owenqi 发表于 2021-6-17 02:11
纯路人,查了一下你说的这个东西,不知道这个答案能不能帮助你,关于区别

关于使用
感谢您的回复,对我很有帮助
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2021-6-18 10:17:11
dqj1551007438 发表于 2021-6-17 21:12
听完您的讲解让人豁然开朗!非常感谢!
但是针对第2个问题,lavaan的标准结构是:
library(lavaan)
通常在回归公式中用“*”定义交互变量,调节变量其实也是交互变量。但在lavaan包中,"*"的作用不一样,好像是对变量x的系数估值进行调整的,在这个包里称为“modifier”,显然和"moderator"调节变量不是一回事。

但这个包的模型语法函数中有个“conditional.x”参数,应该可以实现模型以某个显变量为条件,但是没有示例代码。

我理解,如果调节变量是类别变量的话,是否可以通过分组回归的方式考察该变量的作用。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群