1

私は次のlavaanモデルを持っています:

model <- ' i =~ 1*t1 + 1*t2 + 1*t3 + 1*t4 + 1*t5 + 1*t6 + 1*t7 + 1*t8 + 1*t9 + 1*t10 + 1*t11 + 1*t12 + 1*t13+ 1*t14 + 1*t15 + 1*t16 + 1*t17 + 1*t18 + 1*t19 + 1*t20
s =~ 0*t1 + 1*t2 + 2*t3 + 3*t4 + 4*t5 + 5*t6 + 6*t7 + 7*t8 + 8*t9 + 9*t10 + 10*t11 + 11*t12 + 12*t13 + 13*t14 + 14*t15 + 15*t16 + 16*t17 + 17*t18 + 18*t19 + 19*t20
t8 ~~ 0.01*t8
t17 ~~ 0.01*t17
t18 ~~ 0.01*t18
# regressions
s ~ h_index
i ~ h_index'

fit_UNconstrained <- growth(model, data=growth_data, group = "type")
summary(fit_UNconstrained)

s ~ h_indexここで、パスを制約し、i ~ h_indexすべてのグループで等しくなるモデルを作成したいと思います( "type")。どうすればこれを達成できますか?

4

1 に答える 1

1

これは、潜在因子の指標にグループごとの制約を追加する場合と同じように機能すると思います。その場合は、グループ間で制約したい予測子の横にラベルのベクトルを追加するだけです。あなたの場合、制約したいパラメーター推定値が 2 つあるため、2 つのベクトルを追加します。

ベクトルの長さはグループの数に依存し、ラベルはすべてのグループで同じになります。

3 つのグループがあるとします。コードは次のようになります。

model <- " 
  i =~ 1*t1 + 1*t2 + 1*t3 + 1*t4 + 1*t5 + 1*t6 + 1*t7 + 1*t8 + 1*t9 + 1*t10 + 1*t11 + 1*t12 + 1*t13+ 1*t14 + 1*t15 + 1*t16 + 1*t17 + 1*t18 + 1*t19 + 1*t20
  s =~ 0*t1 + 1*t2 + 2*t3 + 3*t4 + 4*t5 + 5*t6 + 6*t7 + 7*t8 + 8*t9 + 9*t10 + 10*t11 + 11*t12 + 12*t13 + 13*t14 + 14*t15 + 15*t16 + 16*t17 + 17*t18 + 18*t19 + 19*t20

  t8 ~~ 0.01*t8
  t17 ~~ 0.01*t17
  t18 ~~ 0.01*t18

  # regressions
  s ~ c(v1, v1, v1)*h_index
  i ~ c(v2, v2, v2)*h_index
"
fit_UNconstrained <- growth(model, data=growth_data, group = "type")
summary(fit_UNconstrained)

ここで、ベクトルc(v1, v1, v1)c(v2, v2, v2)は、これらのパラメーター推定値がグループ全体で等しくなるように制約するように lavaan に指示しています。

これはあなたが心に留めていることを行うべきだと思います。

于 2016-04-04T16:05:14.670 に答える