0

我正在尝试使用mirt包运行 CFA。我有 3 个实质性因素 FA、FB 和 FC 以及几个一般因素 F1、F2 等。

我想让实质性因素相互关联,但将其余因素建模为与实质性因素不相关,但相互关联。

对于 3+1 因素,我使用了模型

model=mirt.model('FA=1-3
             FB=4-6
             FC=7-9
             F1=1-9
             COV=FA*FB*FC
             CONSTRAIN = (1-9,a4)')

它工作得非常好,导致以下摘要():

Factor correlations: 
   FA    FB    FC     F1
FA 1.000 0.643 0.522  0
FB 0.643 1.000 0.566  0
FC 0.522 0.566 1.000  0
F1 0.000 0.000 0.000  1

当我添加更多因素(F2、F3、...)并指定我希望它们“自由关联”时,这无法达到相同的结果。该模型

model=mirt.model('FA=1-3
             FB=4-6
             FC=7-9
             F1=1-9
             F2=1-9
             COV=FA*FB*FC, F1*F2
             CONSTRAIN = (1-9,a4),(1-9,a5)')

产生以下摘要():

Factor correlations: 

   FA    FB    FC     F1 F2
FA 1.000 0.669 0.553  0  0
FB 0.669 1.000 0.589  0  0
FC 0.553 0.589 1.000  0  0
F1 0.000 0.000 0.000  1  0
F2 0.000 0.000 0.000  0  1

关于为什么 COV 配方不起作用的任何想法?

非常感谢!KH

4

1 回答 1

0

显然,一开始的代码没有问题。mirt 包的作者 Phil Chalmers 无法重现该问题。使用逗号定义协方差的方法是正确的。

于 2015-03-05T18:06:10.093 回答