如何解决拉瓦兰警告:观察到的某些差异至少比其他差异大1000倍;使用varTablefit进行调查
我正在尝试从数据集中评估sem模型,其中一些数据是李克特量表,即1-5。并且某些数据是从计算机日志中针对某些活动 COUNTS 生成的。
而在进行合身时,laveen给我的错误是:
lavaan警告:观察到的一些差异(至少)比其他差异大1000倍;使用varTable(fit)进行调查
为减轻此警告,我想scale
使用一些变量。但是不知道这样做的方式。
Log_And_SurveyResult <- read_excel("C:/Users/Aakash/Desktop/analysis/Log-And-SurveyResult.xlsx")
model <- '
Reward =~ REW1 + REW2 + REW3 + REW4
ECA =~ ECA1 + ECA2 + ECA3
Feedback =~ FED1 + FED2 + FED3 + FED4
Motivation =~ Reward + ECA + Feedback
Satisfaction =~ a*MaxTimeSpentInAWeek + a*TotalTimeSpent + a*TotalLearningActivityView
Motivation ~ Satisfaction'
fit <- sem(model,data = Log_And_SurveyResult)
summary(fit,standardized=T,std.lv = T)
fitMeasures(fit,c("cfi","rmsea","srmr"))
我想缩放一些变量,例如MaxTimeSpentInAWeek
和TotalTimeSpent
能否请您帮我弄清楚如何缩放变量?非常感谢。
解决方法
您可以只使用scale(MaxTimeSpentInAWeek)
。这会将您的变量缩放为均值= 0,方差=1。例如:
Log_And_SurveyResult$MaxTimeSpentInAWeek <-
scale(Log_And_SurveyResult$MaxTimeSpentInAWeek)
Log_And_SurveyResult$TotalTimeSpent <-
scale(Log_And_SurveyResult$TotalTimeSpent)
还是我误解了你的问题?
,由于Elias pointed out,变量之间的幅度差异很大,建议对变量进行缩放。
该警告提供了一个提示,检查 varTable(fit)
会返回有关拟合 lavaan
对象中变量的摘要信息。
您可以在子集或整个 scale()
上使用 apply()
,而不是在每列上单独运行 data.frame
:
## Scale the variables in the 4th and 7h column
Log_And_SurveyResult[,c(4,7)] <- apply(Log_And_SurveyResult[,7)],2,scale)
## Scale the whole data.frame
Log_And_SurveyResult <- apply(Log_And_SurveyResult,scale)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。