誰かがここで何らかのガイダンスを提供できることを願っています。
simDesign パッケージを使用して多変量シミュレーションを作成しています。因子の数と各因子にロードするアイテムを変化させています。factornumbers に存在する因子の数を識別し、それらに適切な項目を割り当てるコマンドを書きたいと思います (クロス ローディングなし)。以下の条件のすべての組み合わせをテストします。複数のモデル ステートメントを記述する必要がないように、異なるモデルの反復を認識するモデル コマンドが必要です。
factornumbers<-c(1,2,3,5)
itemsperfactor<-c(5,10,30)
lavaan と mirt が探しているものは以下のとおりです。
mirtmodel<-mirt.model('
F1=1-15
F2=16-30
MEAN=F1,F2
COV=F1*F2')
lavmodel <- ' F1=~ Item_1 + Item_2 + Item_3 + Item_4 + Item_5 + Item_6 + Item_7 + Item_8 + Item_9 + Item_10 + Item_11 + Item_12 + Item_13 + Item_14 + Item_15
F2=~ Item_16 + Item_17 + Item_18 + Item_19 + Item_20 + Item_21 + Item_22 + Item_23 + Item_24 + Item_25 + Item_26 + Item_27 + Item_28 + Item_29 + Item_30'
simDesign パッケージはこの例を提供します。これを拡張したいと思いますが、ノウハウがあるかどうかはわかりません。
lavmodel<-paste0('F=~ ', paste0(colnames(dat)[1L], ' + '),
paste0(colnames(dat)[-1L], collapse = ' + '))
私が望むのは、factornumbers コマンドで指定された要素の数を見つけ、データで指定された正しいアイテムと itemsperfactor を割り当てる単一の mirt と lavaan コマンドです。
編集:モデル識別で、その条件に使用されている要素と項目構造を取得し、モデル識別に正しい情報を入力してください。
例えば:
mirtmodel<-mirt.model('
F1=1-1
F2=6-10
F3=11-15
F4=16-20
F5=21-25
MEAN=F1,F2,F3,F4,F5
COV=F1*F2*F3*F4*F5')
または
mirtmodel<-mirt.model('
F1=1-30
F2=31-60
MEAN=F1,F2
COV=F1*F2')
また、対応するlavaanモデル。