You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无估计因子值时如何检验SEM线性假设?含lavaan模型验证

在结构方程模型(SEM)中检验因子间的二次关系(无估计因子值时)

假设我们有如下简化的路径模型(基于lavaan语法):

lavaan -> '
  # measurement model
  A =~ ItemA + ItemB + ItemC
  B =~ ItemD + ItemE + ItemF
  C =~ ItemG + ItemH + ItemI

  # path model
  A ~ B + C'

要检验B和C与A不存在二次关系,你提到的两种方法中,方法一是正确可行的,方法二不可行,具体分析如下:

方法一:基于观测指标平方构建二次潜变量

思路与代码

先在数据集中将B、C的各观测条目平方,生成如ItemD_sqr、ItemE_sqr这类新变量,再构建包含二次潜变量的模型:

lavaan ->'
  # measurement model
  A =~ ItemA + ItemB + ItemC
  B =~ ItemD + ItemE + ItemF
  C =~ ItemG + ItemH + ItemI

  B_sqr =~ ItemD_sqr + ItemE_sqr + ItemF_sqr
  C_sqr =~ ItemG_sqr + ItemH_sqr + ItemI_sqr

  # path model
  A ~ B + B_sqr + C + C_sqr'

判断逻辑

  • 观察二次潜变量B_sqr、C_sqr对A的路径系数是否显著(p值小于预设显著性水平,如0.05);
  • 对比原模型与加入二次项后的模型的拟合指标(如Δχ²、CFI、TLI变化),以及A的R²是否有显著提升;
  • 若二次项系数显著且模型拟合/解释力有提升,则说明存在二次关系,反之则支持线性假设。

合理性

在SEM中,潜变量是不可直接观测的构念,无法直接对其进行平方运算。通过观测指标的平方构建对应的二次潜变量,符合SEM的测量模型逻辑——二次潜变量代表原潜变量的非线性效应,其测量模型与原潜变量的测量逻辑一致。

方法二:直接对潜变量使用I(B^2)

这种方法不可行,原因如下:

  • lavaan中的I()运算符仅支持对观测变量进行算术运算,而B、C是模型估计出的潜变量,并非原始观测数据中的变量,无法直接用I(B^2)的形式生成二次项;
  • 潜变量是基于观测指标的线性组合估计得到的,直接对其进行平方运算不符合SEM的模型框架,lavaan也无法识别这种语法。

内容的提问来源于stack exchange,提问作者HHKK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 00:52:44