Load

library(thurstonianIRT)

The data

First the data have to be encoded from Rank to binary. Examples of encoding are shown bellow.

Example 1

Rank Rank Rank
A B C
1 2 3
binary binary binary
{A, B} {A, C} {B, C}
1 1 1

Example 2

Rank Rank Rank
A B C
2 1 3
binary binary binary
{A, B} {A, C} {B, C}
0 1 1

The coded data

data("triplets")
head(triplets)
##   i1i2 i1i3 i2i3 i4i5 i4i6 i5i6 i7i8 i7i9 i8i9 i10i11 i10i12 i11i12
## 1    1    0    0    1    0    0    1    1    1      0      1      1
## 2    0    0    1    0    0    0    0    0    1      0      0      0
## 3    0    0    1    0    0    1    0    1    1      0      0      0
## 4    0    0    1    1    1    0    1    1    0      0      0      0
## 5    1    1    1    0    0    1    1    1    0      1      0      0
## 6    1    1    1    0    0    1    1    0    0      0      1      1

Define blocks

blocks<-set_block(c("i1","i2","i3"),
                  traits=c("t1","t2","t3"),
                  signs=c(1,1,1))+  
  set_block(c("i4","i5","i6"),
            traits=c("t1","t2","t3"),
            signs=c(-1,1,1))+
  set_block(c("i7","i8","i9"),
            traits=c("t1","t2","t3"),
            signs=c(1,1,-1))+
  set_block(c("i10","i11","i12"),
            traits=c("t1","t2","t3"),
            signs=c(1,-1,1))
data.frame(blocks$blocks)
##   items traits names signs items.1 traits.1 names.1 signs.1 items.2 traits.2 names.2 signs.2 items.3 traits.3 names.3 signs.3
## 1    i1     t1    i1     1      i4       t1      i4      -1      i7       t1      i7       1     i10       t1     i10       1
## 2    i2     t2    i2     1      i5       t2      i5       1      i8       t2      i8       1     i11       t2     i11      -1
## 3    i3     t3    i3     1      i6       t3      i6       1      i9       t3      i9      -1     i12       t3     i12       1

Triplets

data_tirt<-make_TIRT_data(data=triplets,blocks=blocks,direction="larger",format="pairwise",family="bernoulli",range=c(0,1))

data_sem<-make_sem_data(data=data_tirt)
data_stan<-make_stan_data(data=data_tirt)

spesification_lavaan<-make_lavaan_code(data_tirt)
spesification_mplus<-make_mplus_code(data_tirt)

Model Spesification

# Spesification in lavaan
cat(spesification_lavaan)
## # factor loadings (lambda)
## trait1 =~ start(1) * i1i2 + L1 * i1i2 + start(1) * i1i3 + L1 * i1i3 + start(1) * i4i5 + L4 * i4i5 + start(1) * i4i6 + L4 * i4i6 + start(1) * i7i8 + L7 * i7i8 + start(1) * i7i9 + L7 * i7i9 + start(1) * i10i11 + L10 * i10i11 + start(1) * i10i12 + L10 * i10i12
## trait2 =~ start(-1) * i1i2 + L2n * i1i2 + start(1) * i2i3 + L2 * i2i3 + start(-1) * i4i5 + L5n * i4i5 + start(1) * i5i6 + L5 * i5i6 + start(-1) * i7i8 + L8n * i7i8 + start(1) * i8i9 + L8 * i8i9 + start(-1) * i10i11 + L11n * i10i11 + start(1) * i11i12 + L11 * i11i12
## trait3 =~ start(-1) * i1i3 + L3n * i1i3 + start(-1) * i2i3 + L3n * i2i3 + start(-1) * i4i6 + L6n * i4i6 + start(-1) * i5i6 + L6n * i5i6 + start(-1) * i7i9 + L9n * i7i9 + start(-1) * i8i9 + L9n * i8i9 + start(-1) * i10i12 + L12n * i10i12 + start(-1) * i11i12 + L12n * i11i12
## 
## # fix factor variances to 1
## trait1 ~~ 1 * trait1
## trait2 ~~ 1 * trait2
## trait3 ~~ 1 * trait3
## 
## # factor correlations
## trait1 ~~ trait2 + trait3
## trait2 ~~ trait3
## 
## # fix factor loadings of the same item to the same value
## L2 == -L2n
## L5 == -L5n
## L8 == -L8n
## L11 == -L11n
## 
## # declare uniquenesses (psi)
## i1i2 ~~ P1P2 * i1i2
## i1i3 ~~ P1P3 * i1i3
## i2i3 ~~ P2P3 * i2i3
## i4i5 ~~ P4P5 * i4i5
## i4i6 ~~ P4P6 * i4i6
## i5i6 ~~ P5P6 * i5i6
## i7i8 ~~ P7P8 * i7i8
## i7i9 ~~ P7P9 * i7i9
## i8i9 ~~ P8P9 * i8i9
## i10i11 ~~ P10P11 * i10i11
## i10i12 ~~ P10P12 * i10i12
## i11i12 ~~ P11P12 * i11i12
## 
## # correlated uniqunesses
## i1i2 ~~ start(1) * i1i3 + P1 * i1i3
## i1i2 ~~ start(-1) * i2i3 + P2n * i2i3
## i1i3 ~~ start(1) * i2i3 + P3 * i2i3
## i4i5 ~~ start(1) * i4i6 + P4 * i4i6
## i4i5 ~~ start(-1) * i5i6 + P5n * i5i6
## i4i6 ~~ start(1) * i5i6 + P6 * i5i6
## i7i8 ~~ start(1) * i7i9 + P7 * i7i9
## i7i8 ~~ start(-1) * i8i9 + P8n * i8i9
## i7i9 ~~ start(1) * i8i9 + P9 * i8i9
## i10i11 ~~ start(1) * i10i12 + P10 * i10i12
## i10i11 ~~ start(-1) * i11i12 + P11n * i11i12
## i10i12 ~~ start(1) * i11i12 + P12 * i11i12
## 
## # pair's uniqueness is equal to sum of 2 utility uniqunesses
## P1P2 == P1 - P2n
## P1P3 == P1 + P3
## P2P3 ==  - P2n + P3
## P4P5 == P4 - P5n
## P4P6 == P4 + P6
## P5P6 ==  - P5n + P6
## P7P8 == P7 - P8n
## P7P9 == P7 + P9
## P8P9 ==  - P8n + P9
## P10P11 == P10 - P11n
## P10P12 == P10 + P12
## P11P12 ==  - P11n + P12
## 
## # fix certain uniquenesses for identification
## P1 == 1
## P4 == 1
## P7 == 1
## P10 == 1
## 
## # force item parameters of the same item to be equal
# Spesification in MPLUS
cat(spesification_lavaan)
## # factor loadings (lambda)
## trait1 =~ start(1) * i1i2 + L1 * i1i2 + start(1) * i1i3 + L1 * i1i3 + start(1) * i4i5 + L4 * i4i5 + start(1) * i4i6 + L4 * i4i6 + start(1) * i7i8 + L7 * i7i8 + start(1) * i7i9 + L7 * i7i9 + start(1) * i10i11 + L10 * i10i11 + start(1) * i10i12 + L10 * i10i12
## trait2 =~ start(-1) * i1i2 + L2n * i1i2 + start(1) * i2i3 + L2 * i2i3 + start(-1) * i4i5 + L5n * i4i5 + start(1) * i5i6 + L5 * i5i6 + start(-1) * i7i8 + L8n * i7i8 + start(1) * i8i9 + L8 * i8i9 + start(-1) * i10i11 + L11n * i10i11 + start(1) * i11i12 + L11 * i11i12
## trait3 =~ start(-1) * i1i3 + L3n * i1i3 + start(-1) * i2i3 + L3n * i2i3 + start(-1) * i4i6 + L6n * i4i6 + start(-1) * i5i6 + L6n * i5i6 + start(-1) * i7i9 + L9n * i7i9 + start(-1) * i8i9 + L9n * i8i9 + start(-1) * i10i12 + L12n * i10i12 + start(-1) * i11i12 + L12n * i11i12
## 
## # fix factor variances to 1
## trait1 ~~ 1 * trait1
## trait2 ~~ 1 * trait2
## trait3 ~~ 1 * trait3
## 
## # factor correlations
## trait1 ~~ trait2 + trait3
## trait2 ~~ trait3
## 
## # fix factor loadings of the same item to the same value
## L2 == -L2n
## L5 == -L5n
## L8 == -L8n
## L11 == -L11n
## 
## # declare uniquenesses (psi)
## i1i2 ~~ P1P2 * i1i2
## i1i3 ~~ P1P3 * i1i3
## i2i3 ~~ P2P3 * i2i3
## i4i5 ~~ P4P5 * i4i5
## i4i6 ~~ P4P6 * i4i6
## i5i6 ~~ P5P6 * i5i6
## i7i8 ~~ P7P8 * i7i8
## i7i9 ~~ P7P9 * i7i9
## i8i9 ~~ P8P9 * i8i9
## i10i11 ~~ P10P11 * i10i11
## i10i12 ~~ P10P12 * i10i12
## i11i12 ~~ P11P12 * i11i12
## 
## # correlated uniqunesses
## i1i2 ~~ start(1) * i1i3 + P1 * i1i3
## i1i2 ~~ start(-1) * i2i3 + P2n * i2i3
## i1i3 ~~ start(1) * i2i3 + P3 * i2i3
## i4i5 ~~ start(1) * i4i6 + P4 * i4i6
## i4i5 ~~ start(-1) * i5i6 + P5n * i5i6
## i4i6 ~~ start(1) * i5i6 + P6 * i5i6
## i7i8 ~~ start(1) * i7i9 + P7 * i7i9
## i7i8 ~~ start(-1) * i8i9 + P8n * i8i9
## i7i9 ~~ start(1) * i8i9 + P9 * i8i9
## i10i11 ~~ start(1) * i10i12 + P10 * i10i12
## i10i11 ~~ start(-1) * i11i12 + P11n * i11i12
## i10i12 ~~ start(1) * i11i12 + P12 * i11i12
## 
## # pair's uniqueness is equal to sum of 2 utility uniqunesses
## P1P2 == P1 - P2n
## P1P3 == P1 + P3
## P2P3 ==  - P2n + P3
## P4P5 == P4 - P5n
## P4P6 == P4 + P6
## P5P6 ==  - P5n + P6
## P7P8 == P7 - P8n
## P7P9 == P7 + P9
## P8P9 ==  - P8n + P9
## P10P11 == P10 - P11n
## P10P12 == P10 + P12
## P11P12 ==  - P11n + P12
## 
## # fix certain uniquenesses for identification
## P1 == 1
## P4 == 1
## P7 == 1
## P10 == 1
## 
## # force item parameters of the same item to be equal
cat(spesification_mplus$TITLE)
## Thurstonian IRT model
cat(spesification_mplus$DATA)
## ! It is assumed that the input file contains only item responses
## ! Any additional variables should be added below
cat(spesification_mplus$VARIABLE)
## CATEGORICAL ARE ALL;
cat(spesification_mplus$ANALYSIS)
##   ESTIMATOR = ulsmv;
##   ITERATIONS = 1000;
##   PARAMETERIZATION = theta;
cat(spesification_mplus$MODEL)
## ! factor loadings (lambda)
## trait1 BY
## i1i2*1  (L1)
## i1i3*1  (L1)
## i4i5*1  (L4)
## i4i6*1  (L4)
## i7i8*1  (L7)
## i7i9*1  (L7)
## i10i11*1  (L10)
## i10i12*1  (L10);
## 
## trait2 BY
## i1i2*-1  (L2n)
## i2i3*1  (L2)
## i4i5*-1  (L5n)
## i5i6*1  (L5)
## i7i8*-1  (L8n)
## i8i9*1  (L8)
## i10i11*-1  (L11n)
## i11i12*1  (L11);
## 
## trait3 BY
## i1i3*-1  (L3n)
## i2i3*-1  (L3n)
## i4i6*-1  (L6n)
## i5i6*-1  (L6n)
## i7i9*-1  (L9n)
## i8i9*-1  (L9n)
## i10i12*-1  (L12n)
## i11i12*-1  (L12n);
## 
## 
## ! fix factor variances to 1
## trait1@1
## trait2@1
## trait3@1
## 
## ! factor correlations
## trait1 WITH
##   trait2*0
##   trait3*0;
## trait2 WITH
##   trait3*0;
## 
## ! declare uniquenesses (psi)
## i1i2*1 (P1P2);
## i1i3*1 (P1P3);
## i2i3*1 (P2P3);
## i4i5*1 (P4P5);
## i4i6*1 (P4P6);
## i5i6*1 (P5P6);
## i7i8*1 (P7P8);
## i7i9*1 (P7P9);
## i8i9*1 (P8P9);
## i10i11*1 (P10P11);
## i10i12*1 (P10P12);
## i11i12*1 (P11P12);
## 
## ! correlated uniqunesses
## i1i2 WITH i1i3*1 (P1);
## i1i2 WITH i2i3*-1 (P2n);
## i1i3 WITH i2i3*1 (P3);
## i4i5 WITH i4i6*1 (P4);
## i4i5 WITH i5i6*-1 (P5n);
## i4i6 WITH i5i6*1 (P6);
## i7i8 WITH i7i9*1 (P7);
## i7i8 WITH i8i9*-1 (P8n);
## i7i9 WITH i8i9*1 (P9);
## i10i11 WITH i10i12*1 (P10);
## i10i11 WITH i11i12*-1 (P11n);
## i10i12 WITH i11i12*1 (P12);
cat(spesification_mplus$MODELCONSTRAINT)
## ! fix factor loadings of the same item to the same value
## L2 = -L2n;
## L5 = -L5n;
## L8 = -L8n;
## L11 = -L11n;
## 
## ! pair's uniqueness is equal to sum of 2 utility uniqunesses
## P1P2 = P1- P2n;
## P1P3 = P1 + P3;
## P2P3 = - P2n + P3;
## P4P5 = P4- P5n;
## P4P6 = P4 + P6;
## P5P6 = - P5n + P6;
## P7P8 = P7- P8n;
## P7P9 = P7 + P9;
## P8P9 = - P8n + P9;
## P10P11 = P10- P11n;
## P10P12 = P10 + P12;
## P11P12 = - P11n + P12;
## 
## ! fix certain uniquenesses for identification
## P1 = 1;
## P4 = 1;
## P7 = 1;
## P10 = 1;
## 
## ! force item parameters of the same item to be equal
## 
## ! trait scores for individuals are estimated and saved in a file
cat(spesification_mplus$SAVEDATA)
##   FILE IS 'eta.csv';
##   SAVE = FSCORES;

Model fit

fit_lavaan<-fit_TIRT_lavaan(data_tirt,control=list(maxiter=1000))
# fit_mplus<-fit_TIRT_mplus(data_tirt)
fit_stan<-fit_TIRT_stan(data_tirt)
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model' NOW (CHAIN 1).
## Chain 1: 
## Chain 1: Gradient evaluation took 0.000694 seconds
## Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 6.94 seconds.
## Chain 1: Adjust your expectations accordingly!
## Chain 1: 
## Chain 1: 
## Chain 1: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 1: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 1: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 1: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 1: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 1: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 1: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 1: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 1: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 1: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 1: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 1: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 1: 
## Chain 1:  Elapsed Time: 42.104 seconds (Warm-up)
## Chain 1:                35.213 seconds (Sampling)
## Chain 1:                77.317 seconds (Total)
## Chain 1: 
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model' NOW (CHAIN 2).
## Chain 2: 
## Chain 2: Gradient evaluation took 0.000418 seconds
## Chain 2: 1000 transitions using 10 leapfrog steps per transition would take 4.18 seconds.
## Chain 2: Adjust your expectations accordingly!
## Chain 2: 
## Chain 2: 
## Chain 2: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 2: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 2: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 2: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 2: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 2: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 2: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 2: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 2: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 2: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 2: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 2: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 2: 
## Chain 2:  Elapsed Time: 41.256 seconds (Warm-up)
## Chain 2:                35.117 seconds (Sampling)
## Chain 2:                76.373 seconds (Total)
## Chain 2: 
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model' NOW (CHAIN 3).
## Chain 3: 
## Chain 3: Gradient evaluation took 0.000414 seconds
## Chain 3: 1000 transitions using 10 leapfrog steps per transition would take 4.14 seconds.
## Chain 3: Adjust your expectations accordingly!
## Chain 3: 
## Chain 3: 
## Chain 3: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 3: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 3: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 3: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 3: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 3: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 3: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 3: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 3: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 3: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 3: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 3: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 3: 
## Chain 3:  Elapsed Time: 41.624 seconds (Warm-up)
## Chain 3:                35.242 seconds (Sampling)
## Chain 3:                76.866 seconds (Total)
## Chain 3: 
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model' NOW (CHAIN 4).
## Chain 4: 
## Chain 4: Gradient evaluation took 0.000417 seconds
## Chain 4: 1000 transitions using 10 leapfrog steps per transition would take 4.17 seconds.
## Chain 4: Adjust your expectations accordingly!
## Chain 4: 
## Chain 4: 
## Chain 4: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 4: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 4: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 4: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 4: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 4: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 4: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 4: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 4: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 4: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 4: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 4: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 4: 
## Chain 4:  Elapsed Time: 41.308 seconds (Warm-up)
## Chain 4:                35.969 seconds (Sampling)
## Chain 4:                77.277 seconds (Total)
## Chain 4:
model<-fit_lavaan$fit 

predict(fit_lavaan,newdata=data_tirt)
## # A tibble: 600 × 3
##       id trait  estimate
##          
##  1     1 trait1    0.300
##  2     1 trait2   -1.21 
##  3     1 trait3    0.143
##  4     2 trait1   -0.915
##  5     2 trait2    0.858
##  6     2 trait3    0.640
##  7     3 trait1   -0.631
##  8     3 trait2    1.34 
##  9     3 trait3    0.877
## 10     4 trait1   -0.952
## # ℹ 590 more rows

Plot Model

semPlot::semPaths(model,what="est",rotation=2,reorder=FALSE)

semPlot::semPaths(model,what="std",rotation=2,reorder=FALSE)

semPlot::semPaths(model,what="paths",rotation=2,reorder=FALSE)

Evaluate Model

# Fit indices
pt<-options(fit=c("GFI","AGFI","RMSEA","NFI","NNFI","CFI","RNI","IFI","SRMR","AIC","AICc","BIC","CAIC"))
fit_index<-data.frame(fit=lavaan::inspect(model,"fit"))
round(fit_index,2)
##                                   fit
## npar                            35.00
## fmin                             0.17
## chisq                           69.54
## df                              43.00
## pvalue                             NA
## chisq.scaled                    46.71
## df.scaled                       43.00
## pvalue.scaled                    0.32
## chisq.scaling.factor             2.01
## baseline.chisq                1615.94
## baseline.df                     66.00
## baseline.pvalue                    NA
## baseline.chisq.scaled          446.56
## baseline.df.scaled              66.00
## baseline.pvalue.scaled           0.00
## baseline.chisq.scaling.factor    3.81
## cfi                              0.98
## tli                              0.97
## cfi.scaled                       0.99
## tli.scaled                       0.99
## cfi.robust                         NA
## tli.robust                         NA
## nnfi                             0.97
## rfi                              0.93
## nfi                              0.96
## pnfi                             0.62
## ifi                              0.98
## rni                              0.98
## nnfi.scaled                      0.99
## rfi.scaled                       0.84
## nfi.scaled                       0.90
## pnfi.scaled                      0.58
## ifi.scaled                       0.99
## rni.scaled                       0.99
## nnfi.robust                        NA
## rni.robust                         NA
## rmsea                            0.06
## rmsea.ci.lower                   0.03
## rmsea.ci.upper                   0.08
## rmsea.ci.level                   0.90
## rmsea.pvalue                     0.33
## rmsea.close.h0                   0.05
## rmsea.notclose.pvalue            0.04
## rmsea.notclose.h0                0.08
## rmsea.scaled                     0.02
## rmsea.ci.lower.scaled            0.00
## rmsea.ci.upper.scaled            0.05
## rmsea.pvalue.scaled              0.92
## rmsea.notclose.pvalue.scaled     0.00
## rmsea.robust                       NA
## rmsea.ci.lower.robust              NA
## rmsea.ci.upper.robust              NA
## rmsea.pvalue.robust                NA
## rmsea.notclose.pvalue.robust       NA
## rmr                              0.06
## rmr_nomean                       0.07
## srmr                             0.07
## srmr_bentler                     0.06
## srmr_bentler_nomean              0.07
## crmr                             0.07
## crmr_nomean                      0.07
## srmr_mplus                         NA
## srmr_mplus_nomean                  NA
## cn_05                          170.72
## cn_01                          194.06
## gfi                              0.97
## agfi                             0.94
## pgfi                             0.53
## mfi                              0.94
## wrmr                             0.94
# Explained variance
r_squared<-data.frame(r_squared=lavaan::inspect(model,"rsquare"))
r_squared
##        r_squared
## i1i2   0.6063962
## i1i3   0.5592264
## i2i3   0.4278743
## i4i5   0.5230762
## i4i6   0.6047728
## i5i6   0.3926475
## i7i8   0.5656510
## i7i9   0.5186509
## i8i9   0.5715663
## i10i11 0.4101206
## i10i12 0.5753794
## i11i12 0.5960012
# Estimates
unstandardized_estimates<-lavaan::inspect(model,"est")
unstandardized_estimates
## $lambda
##        trait1 trait2 trait3
## i1i2    1.174 -1.264  0.000
## i1i3    1.174  0.000 -1.224
## i4i5   -1.389 -1.240  0.000
## i4i6   -1.389  0.000 -0.923
## i7i8    1.036 -1.006  0.000
## i7i9    1.036  0.000  0.998
## i10i11  1.113  0.595  0.000
## i10i12  1.113  0.000 -1.231
## i2i3    0.000  1.264 -1.224
## i5i6    0.000  1.240 -0.923
## i8i9    0.000  1.006  0.998
## i11i12  0.000 -0.595 -1.231
## 
## $theta
##          i1i2   i1i3   i4i5   i4i6   i7i8   i7i9 i10i11 i10i12   i2i3   i5i6   i8i9 i11i12
## i1i2    2.432                                                                             
## i1i3    1.000  2.078                                                                      
## i4i5    0.000  0.000  2.344                                                               
## i4i6    0.000  0.000  1.000  1.958                                                        
## i7i8    0.000  0.000  0.000  0.000  2.016                                                 
## i7i9    0.000  0.000  0.000  0.000  1.000  2.081                                          
## i10i11  0.000  0.000  0.000  0.000  0.000  0.000  1.795                                   
## i10i12  0.000  0.000  0.000  0.000  0.000  0.000  1.000  1.864                            
## i2i3   -1.432  1.078  0.000  0.000  0.000  0.000  0.000  0.000  2.510                     
## i5i6    0.000  0.000 -1.344  0.958  0.000  0.000  0.000  0.000  0.000  2.302              
## i8i9    0.000  0.000  0.000  0.000 -1.016  1.081  0.000  0.000  0.000  0.000  2.097       
## i11i12  0.000  0.000  0.000  0.000  0.000  0.000 -0.795  0.864  0.000  0.000  0.000  1.659
## 
## $psi
##        trait1 trait2 trait3
## trait1  1.000              
## trait2 -0.260  1.000       
## trait3  0.083  0.394  1.000
## 
## $nu
##        intrcp
## i1i2        0
## i1i3        0
## i4i5        0
## i4i6        0
## i7i8        0
## i7i9        0
## i10i11      0
## i10i12      0
## i2i3        0
## i5i6        0
## i8i9        0
## i11i12      0
## 
## $alpha
##        intrcp
## trait1      0
## trait2      0
## trait3      0
## 
## $tau
##           thrshl
## i1i2|t1    0.470
## i1i3|t1   -1.170
## i4i5|t1    0.648
## i4i6|t1    1.135
## i7i8|t1   -0.859
## i7i9|t1   -1.181
## i10i11|t1  0.533
## i10i12|t1  1.514
## i2i3|t1   -1.917
## i5i6|t1    0.646
## i8i9|t1   -0.475
## i11i12|t1  0.892
## 
## $delta
##        scales
## i1i2    0.402
## i1i3    0.461
## i4i5    0.451
## i4i6    0.449
## i7i8    0.464
## i7i9    0.481
## i10i11  0.573
## i10i12  0.477
## i2i3    0.477
## i5i6    0.514
## i8i9    0.452
## i11i12  0.493
standardized_estimates<-lavaan::inspect(model,"std")
standardized_estimates
## $lambda
##        trait1 trait2 trait3
## i1i2    0.472 -0.508  0.000
## i1i3    0.541  0.000 -0.564
## i4i5   -0.626 -0.559  0.000
## i4i6   -0.624  0.000 -0.415
## i7i8    0.481 -0.467  0.000
## i7i9    0.498  0.000  0.480
## i10i11  0.638  0.341  0.000
## i10i12  0.531  0.000 -0.588
## i2i3    0.000  0.603 -0.584
## i5i6    0.000  0.637 -0.474
## i8i9    0.000  0.455  0.451
## i11i12  0.000 -0.294 -0.608
## 
## $theta
##          i1i2   i1i3   i4i5   i4i6   i7i8   i7i9 i10i11 i10i12   i2i3   i5i6   i8i9 i11i12
## i1i2    0.394                                                                             
## i1i3    0.445  0.441                                                                      
## i4i5    0.000  0.000  0.477                                                               
## i4i6    0.000  0.000  0.467  0.395                                                        
## i7i8    0.000  0.000  0.000  0.000  0.434                                                 
## i7i9    0.000  0.000  0.000  0.000  0.488  0.481                                          
## i10i11  0.000  0.000  0.000  0.000  0.000  0.000  0.590                                   
## i10i12  0.000  0.000  0.000  0.000  0.000  0.000  0.547  0.425                            
## i2i3   -0.580  0.472  0.000  0.000  0.000  0.000  0.000  0.000  0.572                     
## i5i6    0.000  0.000 -0.579  0.451  0.000  0.000  0.000  0.000  0.000  0.607              
## i8i9    0.000  0.000  0.000  0.000 -0.494  0.517  0.000  0.000  0.000  0.000  0.428       
## i11i12  0.000  0.000  0.000  0.000  0.000  0.000 -0.461  0.491  0.000  0.000  0.000  0.404
## 
## $psi
##        trait1 trait2 trait3
## trait1  1.000              
## trait2 -0.260  1.000       
## trait3  0.083  0.394  1.000
## 
## $nu
##        intrcp
## i1i2        0
## i1i3        0
## i4i5        0
## i4i6        0
## i7i8        0
## i7i9        0
## i10i11      0
## i10i12      0
## i2i3        0
## i5i6        0
## i8i9        0
## i11i12      0
## 
## $alpha
##        intrcp
## trait1      0
## trait2      0
## trait3      0
## 
## $tau
##           thrshl
## i1i2|t1    0.189
## i1i3|t1   -0.539
## i4i5|t1    0.292
## i4i6|t1    0.510
## i7i8|t1   -0.399
## i7i9|t1   -0.568
## i10i11|t1  0.305
## i10i12|t1  0.722
## i2i3|t1   -0.915
## i5i6|t1    0.332
## i8i9|t1   -0.215
## i11i12|t1  0.440
## 
## $delta
##        scales
## i1i2        1
## i1i3        1
## i4i5        1
## i4i6        1
## i7i8        1
## i7i9        1
## i10i11      1
## i10i12      1
## i2i3        1
## i5i6        1
## i8i9        1
## i11i12      1
lavaan::parameterEstimates(model,se=TRUE,
                           zstat=TRUE,
                           pvalue=TRUE,
                           ci=TRUE,
                           level=0.95,
                           boot.ci.type="perc",
                           standardized=TRUE,
                           fmi=FALSE,
                           remove.system.eq=TRUE,
                           remove.eq=FALSE,
                           remove.ineq=FALSE,
                           remove.def=FALSE,
                           rsquare=TRUE,
                           add.attributes=TRUE)
## 
## Latent Variables:
##                    Estimate  Std.Err  z-value  P(>|z|) ci.lower ci.upper   Std.lv  Std.all
##   trait1 =~                                                                               
##     i1i2      (L1)    1.174    0.513    2.289    0.022    0.169    2.179    1.174    0.472
##     i1i3      (L1)    1.174    0.513    2.289    0.022    0.169    2.179    1.174    0.541
##     i4i5      (L4)   -1.389    0.607   -2.289    0.022   -2.578   -0.199   -1.389   -0.626
##     i4i6      (L4)   -1.389    0.607   -2.289    0.022   -2.578   -0.199   -1.389   -0.624
##     i7i8      (L7)    1.036    0.375    2.765    0.006    0.302    1.770    1.036    0.481
##     i7i9      (L7)    1.036    0.375    2.765    0.006    0.302    1.770    1.036    0.498
##     i10i11   (L10)    1.113    0.429    2.591    0.010    0.271    1.954    1.113    0.638
##     i10i12   (L10)    1.113    0.429    2.591    0.010    0.271    1.954    1.113    0.531
##   trait2 =~                                                                               
##     i1i2     (L2n)   -1.264    0.504   -2.507    0.012   -2.252   -0.276   -1.264   -0.508
##     i2i3      (L2)    1.264    0.504    2.507    0.012    0.276    2.252    1.264    0.603
##     i4i5     (L5n)   -1.240    0.517   -2.398    0.016   -2.253   -0.226   -1.240   -0.559
##     i5i6      (L5)    1.240    0.517    2.398    0.016    0.226    2.253    1.240    0.637
##     i7i8     (L8n)   -1.006    0.371   -2.713    0.007   -1.732   -0.279   -1.006   -0.467
##     i8i9      (L8)    1.006    0.371    2.713    0.007    0.279    1.732    1.006    0.455
##     i10i11  (L11n)    0.595    0.273    2.180    0.029    0.060    1.130    0.595    0.341
##     i11i12   (L11)   -0.595    0.273   -2.180    0.029   -1.130   -0.060   -0.595   -0.294
##   trait3 =~                                                                               
##     i1i3     (L3n)   -1.224    0.461   -2.656    0.008   -2.127   -0.321   -1.224   -0.564
##     i2i3     (L3n)   -1.224    0.461   -2.656    0.008   -2.127   -0.321   -1.224   -0.584
##     i4i6     (L6n)   -0.923    0.401   -2.302    0.021   -1.710   -0.137   -0.923   -0.415
##     i5i6     (L6n)   -0.923    0.401   -2.302    0.021   -1.710   -0.137   -0.923   -0.474
##     i7i9     (L9n)    0.998    0.339    2.944    0.003    0.334    1.663    0.998    0.480
##     i8i9     (L9n)    0.998    0.339    2.944    0.003    0.334    1.663    0.998    0.451
##     i10i12  (L12n)   -1.231    0.423   -2.909    0.004   -2.061   -0.402   -1.231   -0.588
##     i11i12  (L12n)   -1.231    0.423   -2.909    0.004   -2.061   -0.402   -1.231   -0.608
## 
## Covariances:
##                    Estimate  Std.Err  z-value  P(>|z|) ci.lower ci.upper   Std.lv  Std.all
##   trait1 ~~                                                                               
##     trait2           -0.260    0.147   -1.766    0.077   -0.548    0.029   -0.260   -0.260
##     trait3            0.083    0.163    0.513    0.608   -0.236    0.402    0.083    0.083
##   trait2 ~~                                                                               
##     trait3            0.394    0.139    2.842    0.004    0.122    0.665    0.394    0.394
##  .i1i2 ~~                                                                                 
##    .i1i3      (P1)    1.000                               1.000    1.000    1.000    0.445
##    .i2i3     (P2n)   -1.432    1.272   -1.126    0.260   -3.925    1.060   -1.432   -0.580
##  .i1i3 ~~                                                                                 
##    .i2i3      (P3)    1.078    1.114    0.968    0.333   -1.105    3.261    1.078    0.472
##  .i4i5 ~~                                                                                 
##    .i4i6      (P4)    1.000                               1.000    1.000    1.000    0.467
##    .i5i6     (P5n)   -1.344    1.134   -1.186    0.236   -3.567    0.878   -1.344   -0.579
##  .i4i6 ~~                                                                                 
##    .i5i6      (P6)    0.958    0.883    1.084    0.278   -0.774    2.689    0.958    0.451
##  .i7i8 ~~                                                                                 
##    .i7i9      (P7)    1.000       NA                         NA       NA    1.000    0.488
##    .i8i9     (P8n)   -1.016    0.801   -1.269    0.204   -2.586    0.553   -1.016   -0.494
##  .i7i9 ~~                                                                                 
##    .i8i9      (P9)    1.081    0.879    1.230    0.219   -0.642    2.803    1.081    0.517
##  .i10i11 ~~                                                                               
##    .i10i12   (P10)    1.000       NA                         NA       NA    1.000    0.547
##    .i11i12  (P11n)   -0.795    0.677   -1.174    0.240   -2.123    0.532   -0.795   -0.461
##  .i10i12 ~~                                                                               
##    .i11i12   (P12)    0.864    0.726    1.191    0.234   -0.558    2.286    0.864    0.491
## 
## Intercepts:
##                    Estimate  Std.Err  z-value  P(>|z|) ci.lower ci.upper   Std.lv  Std.all
##    .i1i2              0.000                               0.000    0.000    0.000    0.000
##    .i1i3              0.000                               0.000    0.000    0.000    0.000
##    .i4i5              0.000                               0.000    0.000    0.000    0.000
##    .i4i6              0.000                               0.000    0.000    0.000    0.000
##    .i7i8              0.000                               0.000    0.000    0.000    0.000
##    .i7i9              0.000                               0.000    0.000    0.000    0.000
##    .i10i11            0.000                               0.000    0.000    0.000    0.000
##    .i10i12            0.000                               0.000    0.000    0.000    0.000
##    .i2i3              0.000                               0.000    0.000    0.000    0.000
##    .i5i6              0.000                               0.000    0.000    0.000    0.000
##    .i8i9              0.000                               0.000    0.000    0.000    0.000
##    .i11i12            0.000                               0.000    0.000    0.000    0.000
##     trait1            0.000                               0.000    0.000    0.000    0.000
##     trait2            0.000                               0.000    0.000    0.000    0.000
##     trait3            0.000                               0.000    0.000    0.000    0.000
## 
## Thresholds:
##                    Estimate  Std.Err  z-value  P(>|z|) ci.lower ci.upper   Std.lv  Std.all
##     i1i2|t1           0.470    0.259    1.815    0.069   -0.037    0.978    0.470    0.189
##     i1i3|t1          -1.170    0.413   -2.835    0.005   -1.979   -0.361   -1.170   -0.539
##     i4i5|t1           0.648    0.282    2.297    0.022    0.095    1.201    0.648    0.292
##     i4i6|t1           1.135    0.413    2.748    0.006    0.326    1.945    1.135    0.510
##     i7i8|t1          -0.859    0.273   -3.147    0.002   -1.395   -0.324   -0.859   -0.399
##     i7i9|t1          -1.181    0.331   -3.565    0.000   -1.830   -0.532   -1.181   -0.568
##     i10i11|t1         0.533    0.211    2.525    0.012    0.119    0.947    0.533    0.305
##     i10i12|t1         1.514    0.439    3.447    0.001    0.653    2.374    1.514    0.722
##     i2i3|t1          -1.917    0.711   -2.696    0.007   -3.311   -0.524   -1.917   -0.915
##     i5i6|t1           0.646    0.284    2.273    0.023    0.089    1.203    0.646    0.332
##     i8i9|t1          -0.475    0.244   -1.944    0.052   -0.954    0.004   -0.475   -0.215
##     i11i12|t1         0.892    0.313    2.846    0.004    0.278    1.505    0.892    0.440
## 
## Variances:
##                    Estimate  Std.Err  z-value  P(>|z|) ci.lower ci.upper   Std.lv  Std.all
##     trat1             1.000                               1.000    1.000    1.000    1.000
##     trat2             1.000                               1.000    1.000    1.000    1.000
##     trat3             1.000                               1.000    1.000    1.000    1.000
##    .i1i2    (P1P2)    2.432    1.272    1.912    0.056   -0.060    4.925    2.432    0.394
##    .i1i3    (P1P3)    2.078    1.114    1.866    0.062   -0.105    4.261    2.078    0.441
##    .i2i3    (P2P3)    2.510    2.163    1.161    0.246   -1.729    6.750    2.510    0.572
##    .i4i5    (P4P5)    2.344    1.134    2.067    0.039    0.122    4.567    2.344    0.477
##    .i4i6    (P4P6)    1.958    0.883    2.216    0.027    0.226    3.689    1.958    0.395
##    .i5i6    (P5P6)    2.302    1.828    1.260    0.208   -1.280    5.884    2.302    0.607
##    .i7i8    (P7P8)    2.016    0.801    2.518    0.012    0.447    3.586    2.016    0.434
##    .i7i9    (P7P9)    2.081    0.879    2.368    0.018    0.358    3.803    2.081    0.481
##    .i8i9    (P8P9)    2.097    1.430    1.466    0.143   -0.706    4.900    2.097    0.428
##    .i1011 (P10P11)    1.795    0.677    2.650    0.008    0.468    3.123    1.795    0.590
##    .i1012 (P10P12)    1.864    0.726    2.569    0.010    0.442    3.286    1.864    0.425
##    .i1112   (P11P)    1.659    1.176    1.411    0.158   -0.646    3.964    1.659    0.404
## 
## Scales y*:
##                    Estimate  Std.Err  z-value  P(>|z|) ci.lower ci.upper   Std.lv  Std.all
##     i1i2              0.402                               0.402    0.402    0.402    1.000
##     i1i3              0.461                               0.461    0.461    0.461    1.000
##     i4i5              0.451                               0.451    0.451    0.451    1.000
##     i4i6              0.449                               0.449    0.449    0.449    1.000
##     i7i8              0.464                               0.464    0.464    0.464    1.000
##     i7i9              0.481                               0.481    0.481    0.481    1.000
##     i10i11            0.573                               0.573    0.573    0.573    1.000
##     i10i12            0.477                               0.477    0.477    0.477    1.000
##     i2i3              0.477                               0.477    0.477    0.477    1.000
##     i5i6              0.514                               0.514    0.514    0.514    1.000
##     i8i9              0.452                               0.452    0.452    0.452    1.000
##     i11i12            0.493                               0.493    0.493    0.493    1.000
## 
## R-Square:
##                    Estimate
##     i1i2              0.606
##     i1i3              0.559
##     i2i3              0.428
##     i4i5              0.523
##     i4i6              0.605
##     i5i6              0.393
##     i7i8              0.566
##     i7i9              0.519
##     i8i9              0.572
##     i10i11            0.410
##     i10i12            0.575
##     i11i12            0.596
## 
## Constraints:
##                                                |Slack|
##     L2 - (-L2n)                                  0.000
##     L5 - (-L5n)                                  0.000
##     L8 - (-L8n)                                  0.000
##     L11 - (-L11n)                                0.000
##     P1P2 - (P1-P2n)                              0.000
##     P1P3 - (P1+P3)                               0.000
##     P2P3 - (-P2n+P3)                             0.000
##     P4P5 - (P4-P5n)                              0.000
##     P4P6 - (P4+P6)                               0.000
##     P5P6 - (-P5n+P6)                             0.000
##     P7P8 - (P7-P8n)                              0.000
##     P7P9 - (P7+P9)                               0.000
##     P8P9 - (-P8n+P9)                             0.000
##     P10P11 - (P10-P11n)                          0.000
##     P10P12 - (P10+P12)                           0.000
##     P11P12 - (-P11n+P12)                         0.000
##     P1 - (1)                                     0.000
##     P4 - (1)                                     0.000
##     P7 - (1)                                     0.000
##     P10 - (1)                                    0.000
# Modification indices
lavaan::modificationIndices(model,
                            standardized=TRUE,
                            cov.std=TRUE,
                            information="expected",
                            power=TRUE,
                            delta=0.1,
                            alpha=0.05,
                            high.power=0.75,
                            sort.=TRUE,
                            minimum.value=0,
                            free.remove=FALSE,
                            na.remove=TRUE,
                            op=NULL)
## Warning: lavaan->modificationIndices():  
##    the modindices() function ignores equality constraints; use lavTestScore() to assess the impact of releasing one or multiple constraints.
##        lhs op    rhs     mi    epc sepc.all delta   ncp power decision
## 122 trait1 =~   i2i3 13.197  0.644    0.307   0.1 0.318 0.087  **(m)**
## 180 i10i12 ~~   i5i6 11.332 -1.077   -0.520   0.1 0.098 0.061  **(m)**
## 153   i4i5 ~~   i7i9  9.980  1.287    0.583   0.1 0.060 0.057  **(m)**
## 176 i10i11 ~~   i2i3  8.760  0.835    0.393   0.1 0.126 0.065  **(m)**
## 123 trait1 =~   i5i6  7.414 -0.433   -0.222   0.1 0.396 0.096  **(m)**
## 179 i10i12 ~~   i2i3  5.250  0.838    0.387   0.1 0.075 0.059  **(m)**
## 173   i7i9 ~~   i2i3  5.138  0.818    0.358   0.1 0.077 0.059  **(m)**
## 125 trait1 =~ i11i12  4.999 -0.340   -0.168   0.1 0.434 0.101  **(m)**
## 177 i10i11 ~~   i5i6  4.190 -0.543   -0.267   0.1 0.142 0.066  **(m)**
## 166   i7i8 ~~ i10i11  3.730  0.623    0.327   0.1 0.096 0.061      (i)
## 148   i1i3 ~~ i10i12  3.665 -0.777   -0.395   0.1 0.061 0.057      (i)
## 184   i2i3 ~~ i11i12  3.331 -0.663   -0.325   0.1 0.076 0.059      (i)
## 128 trait2 =~   i7i9  2.733  0.391    0.188   0.1 0.179 0.071      (i)
## 130 trait3 =~   i1i2  2.463  0.305    0.123   0.1 0.265 0.081      (i)
## 175   i7i9 ~~ i11i12  2.422 -0.581   -0.313   0.1 0.072 0.058      (i)
## 139   i1i2 ~~ i10i12  2.366 -0.670   -0.314   0.1 0.053 0.056      (i)
## 124 trait1 =~   i8i9  2.266 -0.275   -0.124   0.1 0.299 0.085      (i)
## 140   i1i2 ~~   i5i6  2.229 -0.601   -0.254   0.1 0.062 0.057      (i)
## 155   i4i5 ~~ i10i12  2.213  0.565    0.270   0.1 0.069 0.058      (i)
## 145   i1i3 ~~   i7i8  2.210  0.601    0.294   0.1 0.061 0.057      (i)
## 149   i1i3 ~~   i5i6  2.191  0.493    0.225   0.1 0.090 0.060      (i)
## 186   i5i6 ~~ i11i12  2.154  0.475    0.243   0.1 0.096 0.061      (i)
## 135   i1i2 ~~   i4i6  2.130 -0.671   -0.308   0.1 0.047 0.055      (i)
## 170   i7i8 ~~ i11i12  1.807 -0.495   -0.271   0.1 0.074 0.058      (i)
## 138   i1i2 ~~ i10i11  1.734 -0.473   -0.226   0.1 0.078 0.059      (i)
## 154   i4i5 ~~ i10i11  1.730 -0.445   -0.217   0.1 0.087 0.060      (i)
## 156   i4i5 ~~   i2i3  1.460  0.466    0.192   0.1 0.067 0.058      (i)
## 150   i1i3 ~~   i8i9  1.409 -0.500   -0.239   0.1 0.056 0.056      (i)
## 41  i10i12 ~~ i10i12  1.258  0.493    0.425   0.1 0.052 0.056      (i)
## 38    i7i9 ~~   i7i9  1.220  0.529    0.481   0.1 0.044 0.055      (i)
## 134   i1i2 ~~   i4i5  1.161 -0.492   -0.206   0.1 0.048 0.056      (i)
## 174   i7i9 ~~   i5i6  1.032  0.353    0.161   0.1 0.083 0.060      (i)
## 171   i7i9 ~~ i10i11  1.024  0.321    0.166   0.1 0.099 0.061      (i)
## 151   i1i3 ~~ i11i12  1.018  0.385    0.207   0.1 0.069 0.058      (i)
## 132 trait3 =~   i7i8  0.869 -0.194   -0.090   0.1 0.231 0.077      (i)
## 182   i2i3 ~~   i5i6  0.822  0.330    0.137   0.1 0.075 0.059      (i)
## 144   i1i3 ~~   i4i6  0.727  0.342    0.169   0.1 0.062 0.057      (i)
## 143   i1i3 ~~   i4i5  0.719 -0.326   -0.148   0.1 0.068 0.058      (i)
## 40  i10i11 ~~ i10i11  0.684 -0.342   -0.590   0.1 0.058 0.057      (i)
## 127 trait2 =~   i4i6  0.662  0.150    0.067   0.1 0.294 0.084      (i)
## 5   trait1 =~   i7i8  0.651  0.122    0.057   0.1 0.435 0.101      (i)
## 34    i4i5 ~~   i4i5  0.637  0.509    0.477   0.1 0.025 0.053      (i)
## 50    i7i8 ~~   i8i9  0.587 -0.258   -0.126   0.1 0.088 0.060      (i)
## 24  trait3 =~ i11i12  0.582 -0.156   -0.077   0.1 0.238 0.078      (i)
## 39    i8i9 ~~   i8i9  0.578 -0.423   -0.428   0.1 0.032 0.054      (i)
## 131 trait3 =~   i4i5  0.560  0.133    0.060   0.1 0.317 0.087      (i)
## 53  i10i11 ~~ i11i12  0.525 -0.181   -0.105   0.1 0.160 0.069      (i)
## 142   i1i2 ~~ i11i12  0.503 -0.299   -0.149   0.1 0.056 0.056      (i)
## 172   i7i9 ~~ i10i12  0.465  0.257    0.130   0.1 0.071 0.058      (i)
## 6   trait1 =~   i7i9  0.421 -0.079   -0.038   0.1 0.673 0.130      (i)
## 187   i8i9 ~~ i11i12  0.408 -0.262   -0.140   0.1 0.059 0.057      (i)
## 157   i4i5 ~~   i8i9  0.406  0.262    0.118   0.1 0.059 0.057      (i)
## 36    i5i6 ~~   i5i6  0.380 -0.346   -0.607   0.1 0.032 0.054      (i)
## 168   i7i8 ~~   i2i3  0.363  0.241    0.107   0.1 0.062 0.057      (i)
## 162   i4i6 ~~ i10i12  0.346 -0.230   -0.120   0.1 0.066 0.058      (i)
## 16  trait2 =~ i11i12  0.323  0.078    0.038   0.1 0.537 0.113      (i)
## 161   i4i6 ~~ i10i11  0.314  0.188    0.100   0.1 0.089 0.060      (i)
## 32    i1i3 ~~   i1i3  0.272 -0.272   -0.441   0.1 0.037 0.054      (i)
## 14  trait2 =~   i8i9  0.262  0.095    0.043   0.1 0.289 0.084      (i)
## 54  i10i12 ~~ i11i12  0.247 -0.149   -0.085   0.1 0.111 0.063      (i)
## 17  trait3 =~   i1i3  0.240 -0.063   -0.029   0.1 0.597 0.121      (i)
## 164   i4i6 ~~   i8i9  0.225 -0.194   -0.096   0.1 0.060 0.057      (i)
## 11  trait2 =~   i4i5  0.224  0.055    0.025   0.1 0.743 0.139      (i)
## 167   i7i8 ~~ i10i12  0.217  0.178    0.092   0.1 0.068 0.058      (i)
## 129 trait2 =~ i10i12  0.214 -0.089   -0.042   0.1 0.273 0.082      (i)
## 23  trait3 =~ i10i12  0.209  0.056    0.027   0.1 0.664 0.129      (i)
## 37    i7i8 ~~   i7i8  0.207 -0.228   -0.434   0.1 0.040 0.055      (i)
## 12  trait2 =~   i5i6  0.205  0.050    0.026   0.1 0.812 0.147      (i)
## 49    i7i8 ~~   i7i9  0.197 -0.141   -0.069   0.1 0.100 0.061      (i)
## 48    i4i6 ~~   i5i6  0.195  0.135    0.064   0.1 0.107 0.062      (i)
## 137   i1i2 ~~   i7i9  0.190 -0.188   -0.084   0.1 0.054 0.056      (i)
## 13  trait2 =~   i7i8  0.190  0.069    0.032   0.1 0.399 0.097      (i)
## 33    i2i3 ~~   i2i3  0.171  0.199    0.572   0.1 0.043 0.055      (i)
## 42  i11i12 ~~ i11i12  0.161 -0.179   -0.404   0.1 0.050 0.056      (i)
## 18  trait3 =~   i2i3  0.154  0.041    0.019   0.1 0.931 0.162      (i)
## 185   i5i6 ~~   i8i9  0.148  0.141    0.064   0.1 0.074 0.059      (i)
## 44    i1i2 ~~   i2i3  0.122  0.129    0.052   0.1 0.074 0.058      (i)
## 43    i1i2 ~~   i1i3  0.122  0.133    0.059   0.1 0.069 0.058      (i)
## 15  trait2 =~ i10i11  0.119  0.029    0.016   0.1 1.454 0.226      (i)
## 159   i4i6 ~~   i7i8  0.117  0.140    0.071   0.1 0.060 0.057      (i)
## 46    i4i5 ~~   i4i6  0.101 -0.111   -0.052   0.1 0.082 0.059      (i)
## 163   i4i6 ~~   i2i3  0.095  0.117    0.053   0.1 0.070 0.058      (i)
## 22  trait3 =~   i8i9  0.094  0.056    0.025   0.1 0.297 0.085      (i)
## 51    i7i9 ~~   i8i9  0.093 -0.099   -0.048   0.1 0.095 0.061      (i)
## 8   trait1 =~ i10i12  0.091 -0.034   -0.016   0.1 0.770 0.142      (i)
## 158   i4i5 ~~ i11i12  0.091  0.110    0.056   0.1 0.075 0.059      (i)
## 126 trait2 =~   i1i3  0.086 -0.061   -0.028   0.1 0.231 0.077      (i)
## 147   i1i3 ~~ i10i11  0.084  0.090    0.047   0.1 0.104 0.062      (i)
## 7   trait1 =~ i10i11  0.084  0.032    0.018   0.1 0.839 0.150      (i)
## 9   trait2 =~   i1i2  0.059  0.049    0.020   0.1 0.244 0.078      (i)
## 169   i7i8 ~~   i5i6  0.054  0.083    0.039   0.1 0.078 0.059      (i)
## 1   trait1 =~   i1i2  0.052  0.040    0.016   0.1 0.325 0.088      (i)
## 165   i4i6 ~~ i11i12  0.048  0.084    0.046   0.1 0.068 0.058      (i)
## 141   i1i2 ~~   i8i9  0.047 -0.103   -0.045   0.1 0.045 0.055      (i)
## 21  trait3 =~   i7i9  0.043 -0.026   -0.012   0.1 0.645 0.126      (i)
## 178 i10i11 ~~   i8i9  0.037 -0.063   -0.033   0.1 0.091 0.061      (i)
## 146   i1i3 ~~   i7i9  0.034  0.072    0.035   0.1 0.066 0.058      (i)
## 183   i2i3 ~~   i8i9  0.034 -0.075   -0.033   0.1 0.060 0.057      (i)
## 35    i4i6 ~~   i4i6  0.033 -0.097   -0.395   0.1 0.035 0.054      (i)
## 133 trait3 =~ i10i11  0.032  0.029    0.016   0.1 0.396 0.096      (i)
## 19  trait3 =~   i4i6  0.025 -0.019   -0.009   0.1 0.660 0.128      (i)
## 2   trait1 =~   i1i3  0.024 -0.019   -0.009   0.1 0.699 0.133      (i)
## 52  i10i11 ~~ i10i12  0.020 -0.037   -0.020   0.1 0.150 0.067      (i)
## 10  trait2 =~   i2i3  0.016  0.014    0.006   0.1 0.885 0.156      (i)
## 20  trait3 =~   i5i6  0.014  0.011    0.006   0.1 1.166 0.191      (i)
## 160   i4i6 ~~   i7i9  0.010  0.042    0.021   0.1 0.056 0.056      (i)
## 152   i4i5 ~~   i7i8  0.006 -0.032   -0.015   0.1 0.058 0.057      (i)
## 181 i10i12 ~~   i8i9  0.006 -0.031   -0.015   0.1 0.061 0.057      (i)
## 31    i1i2 ~~   i1i2  0.003  0.039    0.394   0.1 0.023 0.053      (i)
## 47    i4i5 ~~   i5i6  0.002  0.014    0.006   0.1 0.107 0.062      (i)
## 45    i1i3 ~~   i2i3  0.002  0.015    0.006   0.1 0.097 0.061      (i)
## 4   trait1 =~   i4i6  0.001  0.006    0.002   0.1 0.409 0.098      (i)
## 3   trait1 =~   i4i5  0.001 -0.003   -0.001   0.1 0.722 0.136      (i)
## 136   i1i2 ~~   i7i8  0.000  0.007    0.003   0.1 0.043 0.055      (i)
## 65    i8i9  |     t1  0.000  0.000    0.000   0.1 0.409 0.098      (i)
## 62  i10i12  |     t1  0.000  0.000    0.000   0.1 0.456 0.104      (i)
## 63    i2i3  |     t1  0.000  0.000    0.000   0.1 0.456 0.104      (i)
## 58    i4i6  |     t1  0.000  0.000    0.000   0.1 0.404 0.097      (i)
## 56    i1i3  |     t1  0.000  0.000    0.000   0.1 0.424 0.100      (i)
## 57    i4i5  |     t1  0.000  0.000    0.000   0.1 0.407 0.098      (i)
## 61  i10i11  |     t1  0.000  0.000    0.000   0.1 0.657 0.128      (i)
## 64    i5i6  |     t1  0.000  0.000    0.000   0.1 0.528 0.112      (i)
## 60    i7i9  |     t1  0.000  0.000    0.000   0.1 0.463 0.104      (i)
## 30  trait2 ~~ trait3  0.000  0.000    0.000   0.1 5.225 0.628      (i)
## 66  i11i12  |     t1  0.000  0.000    0.000   0.1 0.487 0.107      (i)
## 29  trait1 ~~ trait3  0.000  0.000    0.000   0.1 6.167 0.700      (i)
## 28  trait1 ~~ trait2  0.000  0.000    0.000   0.1 5.631 0.660      (i)
## 55    i1i2  |     t1  0.000  0.000    0.000   0.1 0.324 0.088      (i)
## 59    i7i8  |     t1  0.000  0.000    0.000   0.1 0.431 0.101      (i)

Score data

score<-predict(fit_lavaan)
score<-data.frame(score)
score<-reshape(score, direction="wide", idvar="id", timevar="trait")

triplets_new<-make_TIRT_data(data=triplets[1:2,],blocks=blocks,direction="larger",format="pairwise",family="bernoulli",range=c(0,1))
score_new<-predict(fit_stan,newdata=triplets_new)
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model_newdata' NOW (CHAIN 1).
## Chain 1: 
## Chain 1: Gradient evaluation took 2.6e-05 seconds
## Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 0.26 seconds.
## Chain 1: Adjust your expectations accordingly!
## Chain 1: 
## Chain 1: 
## Chain 1: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 1: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 1: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 1: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 1: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 1: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 1: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 1: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 1: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 1: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 1: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 1: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 1: 
## Chain 1:  Elapsed Time: 0.044 seconds (Warm-up)
## Chain 1:                0.047 seconds (Sampling)
## Chain 1:                0.091 seconds (Total)
## Chain 1: 
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model_newdata' NOW (CHAIN 2).
## Chain 2: 
## Chain 2: Gradient evaluation took 9e-06 seconds
## Chain 2: 1000 transitions using 10 leapfrog steps per transition would take 0.09 seconds.
## Chain 2: Adjust your expectations accordingly!
## Chain 2: 
## Chain 2: 
## Chain 2: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 2: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 2: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 2: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 2: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 2: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 2: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 2: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 2: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 2: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 2: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 2: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 2: 
## Chain 2:  Elapsed Time: 0.045 seconds (Warm-up)
## Chain 2:                0.047 seconds (Sampling)
## Chain 2:                0.092 seconds (Total)
## Chain 2: 
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model_newdata' NOW (CHAIN 3).
## Chain 3: 
## Chain 3: Gradient evaluation took 1e-05 seconds
## Chain 3: 1000 transitions using 10 leapfrog steps per transition would take 0.1 seconds.
## Chain 3: Adjust your expectations accordingly!
## Chain 3: 
## Chain 3: 
## Chain 3: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 3: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 3: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 3: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 3: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 3: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 3: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 3: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 3: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 3: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 3: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 3: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 3: 
## Chain 3:  Elapsed Time: 0.043 seconds (Warm-up)
## Chain 3:                0.045 seconds (Sampling)
## Chain 3:                0.088 seconds (Total)
## Chain 3: 
## 
## SAMPLING FOR MODEL 'thurstonian_irt_model_newdata' NOW (CHAIN 4).
## Chain 4: 
## Chain 4: Gradient evaluation took 8e-06 seconds
## Chain 4: 1000 transitions using 10 leapfrog steps per transition would take 0.08 seconds.
## Chain 4: Adjust your expectations accordingly!
## Chain 4: 
## Chain 4: 
## Chain 4: Iteration:    1 / 2000 [  0%]  (Warmup)
## Chain 4: Iteration:  200 / 2000 [ 10%]  (Warmup)
## Chain 4: Iteration:  400 / 2000 [ 20%]  (Warmup)
## Chain 4: Iteration:  600 / 2000 [ 30%]  (Warmup)
## Chain 4: Iteration:  800 / 2000 [ 40%]  (Warmup)
## Chain 4: Iteration: 1000 / 2000 [ 50%]  (Warmup)
## Chain 4: Iteration: 1001 / 2000 [ 50%]  (Sampling)
## Chain 4: Iteration: 1200 / 2000 [ 60%]  (Sampling)
## Chain 4: Iteration: 1400 / 2000 [ 70%]  (Sampling)
## Chain 4: Iteration: 1600 / 2000 [ 80%]  (Sampling)
## Chain 4: Iteration: 1800 / 2000 [ 90%]  (Sampling)
## Chain 4: Iteration: 2000 / 2000 [100%]  (Sampling)
## Chain 4: 
## Chain 4:  Elapsed Time: 0.044 seconds (Warm-up)
## Chain 4:                0.042 seconds (Sampling)
## Chain 4:                0.086 seconds (Total)
## Chain 4:
score_new<-data.frame(score_new)
score_new<-reshape(score_new[,c("id","trait","estimate")], direction="wide", idvar="id", timevar="trait")