1

我想在 R 中的数据上使用函数 sem(带有 lavaan 包):

Model1<- 'Transfer~Amotivation+Gender+Age
Amotivation~Gender+Age

transfer are 4 questions with a 5 point likert scale 
Amotivation: 4 questions with a 5 pint likert scale
Gender: 0 (=male) and 1 (=female)
Age: just the different ages 

我得到了下一个错误:

in getDataFull (data= data, group =  group, grow.label = group.label,:
lavaan WARNING: some observed variances are (at least) a factor 100 times larger than others; please rescale 

有人熟悉这个错误吗?它会影响我的结果吗?我需要改变什么吗?我真的不知道这个错误是什么意思。

4

1 回答 1

0

你的秤不等价。您的性别变量被限制为 0 或 1。动机被限制在 1 到 5 之间,但年龄的限制更少。我为性别、年龄和动机创建了一些样本数据。您可以看到年龄变量的方差比性别的方差高 4,000 多倍,比样本动机数据高约 500 倍。

gender  <- c(0,1,1,1,0,0,1,1,0,1,1,0,0,1,1,1)
age <- c(18,42,87,12,24,26,98,84,23,12,95,44,54,23,10,16)
set.seed(42)
amotivation <- rnorm(16, 3, 1.5)
var(gender)      #    0.25 variance
var(age)         # 1017.27 variance
var(amotivation) #    2.21 variance

我不确定不等方差如何影响您的结果,或者您是否需要做任何事情。为了使您的年龄变量更接近动机量表,您可以转换数据,使其也是 5 点量表。

newage <- age/max(age)*5
var(newage) # 2.65 variance

您可以尝试以两种方式运行分析(使用原始数据和转换后的数据),看看是否存在差异。

于 2013-05-14T20:17:00.033 回答