如何解决估计SEM模型的方差通货膨胀系数VIFlavaan
我正在尝试从结构方程模型(SEM)中找到方差膨胀因子(VIF)。我的模型是:# load the data
library(readxl)
Log_And_SurveyResult <- read_excel("C:/Users/Aakash/Desktop/analysis/Today/Mot-Log.xlsx")
# load lavaan
library(lavaan)
#scale the variables
Log_And_SurveyResult$Time <-
scale(Log_And_SurveyResult$TotalActivity)
model <-
Ct =~ CT1 + CT2 + CT3
R =~ R1 + R2 + R3
B =~ B1 + B2 + B3
UserActivity =~ Time + TotalActivity
fit <- sem(model,data = Log_And_SurveyResult,std.lv = TRUE)
summary(fit,standardized=T)
以下是我的数据示例:
Time,TotalActivity,CT1,CT2,CT3,R1,R2,R3,B1,B2,B3
-0.4923798,-0.09991485,4,3,2
-1.0519708,-1.12771752,2,3
-0.5330384,-0.06320762,5,4
-1.0134522,-0.67805386,5
-1.1568273,-1.18277838,4
-0.8561675,-0.12744528,3
运行vif(fit)
时出现错误:
Error: $ operator not defined for this S4 class
我正在跟踪http://minato.sip21c.org/msb/man/VIF.html
中的示例有关VIF的大多数示例和教程都是使用多元回归模型生成的。但是如何获得SEM模型的VIF?
解决方法
编辑(与OP聊天并查看了他的数据之后):
OP希望估计使用包sem()
的{{1}}函数生成的模型的VIF。
我提出的解决方案是创建一个二进制虚拟变量,将其与模型中的自变量相对应,然后使用lavaan
估算方差膨胀因子。示例:
vif()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。