LVM Short Course - Day 3 Examples

Rich Jones, Doug Tommet

July 9, 2022

Setting up the R environment

These are the packages used by R for these examples

library(readr)
library(dplyr)
library(tidyr)
library(ggplot2)
library(RColorBrewer)
library(lme4)
library(lavaan)
library(MplusAutomation)
library(gtsummary)

Getting the EPESE data

address <- "https://lvmworkshop.s3.amazonaws.com/LDA/ex0301.dat"

msq0301 <- read_csv(address, 
                    col_names=c("msqtot1", "msqtot4", "msqtot7", "age", "black")) 

msq0301 <- msq0301 %>%
  mutate(msqtot1 = case_when(msqtot1 == -9999 ~ NA_real_,
                             TRUE ~ msqtot1),
         msqtot4 = case_when(msqtot4 == -9999 ~ NA_real_,
                             TRUE ~ msqtot4),
         msqtot7 = case_when(msqtot7 == -9999 ~ NA_real_,
                             TRUE ~ msqtot7),
         cage = age - mean(age, na.rm = TRUE),
         cblack = black - mean(black, na.rm = TRUE),
         usedata = !(is.na(msqtot1) & is.na(msqtot4) & is.na(msqtot7)))

Ex0303 - lavaan

Lavaan supports multiple group analyses. I can’t get it to work though.

Ex0303 - MplusAutomation (input)

ex0303mod.mplus <-  mplusObject(
    ANALYSIS = "ESTIMATOR = MLR; ",
    VARIABLE = "GROUPING = black (0=white 1=black) ;", 
    MODEL = "i s | msqtot1@0 msqtot4@.6 msqtot7@1.2 ;
            i s on cage ;",
    OUTPUT = "STDYX; tech1;",
    usevariables = c("msqtot1", "msqtot4", "msqtot7", "cage", "black"),
    rdata = msq0301
  )
ex0303fit.mplus <- mplusModeler(ex0303mod.mplus,
                          dataout = "ex0303.dat",
                          modelout = "ex0303.inp",
                          run = TRUE) 
## 
## Running model: ex0303.inp 
## System command: cd "/Users/douglastommet/Dropbox/work/ShortCourse/POSTED/SLIDES/LDA/lavaan" && "/Applications/Mplus/mplus" "ex0303.inp" 
## Reading model:  ex0303.out
file.remove("ex0303.inp")
## [1] TRUE

Ex0303 - MplusAutomation (output)

# readModels("ex0303.out")
MplusAutomation::readModels("ex0303.out", what="summaries")
## Reading model:  ex0303.out
## Estimated using MLR 
## Number of obs: 14059, number of (free) parameters: 20 
## 
## Model: Chi2(df = 4) = 71.406, p = 0 
## Baseline model: Chi2(df = 12) = 6026.215, p = 0 
## 
## Fit Indices: 
## 
## CFI = 0.989, TLI = 0.966, SRMR = 0.019 
## RMSEA = 0.049, 90% CI [0.039, 0.059], p < .05 = 0.545 
## AIC = 102555.365, BIC = 102706.385 
## NULL
MplusAutomation::readModels("ex0303.out")[["parameters"]][["unstandardized"]]
## Reading model:  ex0303.out
##           paramHeader   param    est    se  est_se    pval Group
## 1                 I.| MSQTOT1  1.000 0.000 999.000 999.000 WHITE
## 2                 I.| MSQTOT4  1.000 0.000 999.000 999.000 WHITE
## 3                 I.| MSQTOT7  1.000 0.000 999.000 999.000 WHITE
## 4                 S.| MSQTOT1  0.000 0.000 999.000 999.000 WHITE
## 5                 S.| MSQTOT4  0.600 0.000 999.000 999.000 WHITE
## 6                 S.| MSQTOT7  1.200 0.000 999.000 999.000 WHITE
## 7                I.ON    CAGE -0.046 0.002 -23.490   0.000 WHITE
## 8                S.ON    CAGE -0.027 0.002 -10.949   0.000 WHITE
## 9              S.WITH       I -0.092 0.038  -2.423   0.015 WHITE
## 10         Intercepts MSQTOT1  0.000 0.000 999.000 999.000 WHITE
## 11         Intercepts MSQTOT4  0.000 0.000 999.000 999.000 WHITE
## 12         Intercepts MSQTOT7  0.000 0.000 999.000 999.000 WHITE
## 13         Intercepts       I  4.919 0.011 453.036   0.000 WHITE
## 14         Intercepts       S -0.321 0.015 -21.957   0.000 WHITE
## 15 Residual.Variances MSQTOT1  0.588 0.034  17.193   0.000 WHITE
## 16 Residual.Variances MSQTOT4  0.775 0.020  39.026   0.000 WHITE
## 17 Residual.Variances MSQTOT7  0.699 0.043  16.324   0.000 WHITE
## 18 Residual.Variances       I  0.759 0.037  20.409   0.000 WHITE
## 19 Residual.Variances       S  0.326 0.055   5.940   0.000 WHITE
## 20                I.| MSQTOT1  1.000 0.000 999.000 999.000 BLACK
## 21                I.| MSQTOT4  1.000 0.000 999.000 999.000 BLACK
## 22                I.| MSQTOT7  1.000 0.000 999.000 999.000 BLACK
## 23                S.| MSQTOT1  0.000 0.000 999.000 999.000 BLACK
## 24                S.| MSQTOT4  0.600 0.000 999.000 999.000 BLACK
## 25                S.| MSQTOT7  1.200 0.000 999.000 999.000 BLACK
## 26               I.ON    CAGE -0.048 0.004 -10.846   0.000 BLACK
## 27               S.ON    CAGE -0.048 0.005  -9.137   0.000 BLACK
## 28             S.WITH       I -0.045 0.083  -0.540   0.589 BLACK
## 29         Intercepts MSQTOT1  0.000 0.000 999.000 999.000 BLACK
## 30         Intercepts MSQTOT4  0.000 0.000 999.000 999.000 BLACK
## 31         Intercepts MSQTOT7  0.000 0.000 999.000 999.000 BLACK
## 32         Intercepts       I  4.211 0.027 157.363   0.000 BLACK
## 33         Intercepts       S -0.489 0.032 -15.349   0.000 BLACK
## 34 Residual.Variances MSQTOT1  0.685 0.078   8.843   0.000 BLACK
## 35 Residual.Variances MSQTOT4  0.968 0.044  22.115   0.000 BLACK
## 36 Residual.Variances MSQTOT7  0.646 0.102   6.345   0.000 BLACK
## 37 Residual.Variances       I  1.228 0.086  14.316   0.000 BLACK
## 38 Residual.Variances       S  0.715 0.130   5.487   0.000 BLACK
MplusAutomation::readModels("ex0303.out")[["tech1"]]
## Reading model:  ex0303.out
## $parameterSpecification
## $WHITE
## $nu
##   MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## 1       0       0       0    0
## 
## $lambda
##         I S CAGE
## MSQTOT1 0 0    0
## MSQTOT4 0 0    0
## MSQTOT7 0 0    0
## CAGE    0 0    0
## 
## $theta
##         MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## MSQTOT1       1      NA      NA   NA
## MSQTOT4       0       2      NA   NA
## MSQTOT7       0       0       3   NA
## CAGE          0       0       0    0
## 
## $alpha
##   I S CAGE
## 1 4 5    0
## 
## $beta
##      I S CAGE
## I    0 0    6
## S    0 0    7
## CAGE 0 0    0
## 
## $psi
##      I  S CAGE
## I    8 NA   NA
## S    9 10   NA
## CAGE 0  0    0
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $BLACK
## $nu
##   MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## 1       0       0       0    0
## 
## $lambda
##         I S CAGE
## MSQTOT1 0 0    0
## MSQTOT4 0 0    0
## MSQTOT7 0 0    0
## CAGE    0 0    0
## 
## $theta
##         MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## MSQTOT1      11      NA      NA   NA
## MSQTOT4       0      12      NA   NA
## MSQTOT7       0       0      13   NA
## CAGE          0       0       0    0
## 
## $alpha
##    I  S CAGE
## 1 14 15    0
## 
## $beta
##      I S CAGE
## I    0 0   16
## S    0 0   17
## CAGE 0 0    0
## 
## $psi
##       I  S CAGE
## I    18 NA   NA
## S    19 20   NA
## CAGE  0  0    0
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## attr(,"group.names")
## [1] "WHITE" "BLACK"
## 
## $startingValues
## $WHITE
## $nu
##   MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## 1       0       0       0    0
## 
## $lambda
##         I   S CAGE
## MSQTOT1 1 0.0    0
## MSQTOT4 1 0.6    0
## MSQTOT7 1 1.2    0
## CAGE    0 0.0    1
## 
## $theta
##         MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## MSQTOT1   0.715      NA      NA   NA
## MSQTOT4   0.000   0.786      NA   NA
## MSQTOT7   0.000   0.000    0.83   NA
## CAGE      0.000   0.000    0.00    0
## 
## $alpha
##       I      S   CAGE
## 1 5.089 -0.387 -0.038
## 
## $beta
##      I S CAGE
## I    0 0    0
## S    0 0    0
## CAGE 0 0    0
## 
## $psi
##         I    S   CAGE
## I    1.04   NA     NA
## S    0.00 2.03     NA
## CAGE 0.00 0.00 40.588
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## $BLACK
## $nu
##   MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## 1       0       0       0    0
## 
## $lambda
##         I   S CAGE
## MSQTOT1 1 0.0    0
## MSQTOT4 1 0.6    0
## MSQTOT7 1 1.2    0
## CAGE    0 0.0    1
## 
## $theta
##         MSQTOT1 MSQTOT4 MSQTOT7 CAGE
## MSQTOT1   0.715      NA      NA   NA
## MSQTOT4   0.000   0.786      NA   NA
## MSQTOT7   0.000   0.000    0.83   NA
## CAGE      0.000   0.000    0.00    0
## 
## $alpha
##       I      S  CAGE
## 1 5.089 -0.387 -0.59
## 
## $beta
##      I S CAGE
## I    0 0    0
## S    0 0    0
## CAGE 0 0    0
## 
## $psi
##         I    S   CAGE
## I    1.04   NA     NA
## S    0.00 2.03     NA
## CAGE 0.00 0.00 38.752
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## attr(,"group.names")
## [1] "WHITE" "BLACK"
## 
## attr(,"class")
## [1] "mplus.tech1" "list"

Getting the data for example 5

address <- "https://lvmworkshop.s3.amazonaws.com/LDA/ex0305.dat"

msq0305 <- read_csv(address, 
                    col_names=c("msqtot1", "msqtot4", "msqtot7", 
                                "age1", "age4", "age7", "black")) 

msq0305 <- msq0305 %>%
  mutate(msqtot1 = case_when(msqtot1 == -9999 ~ NA_real_,
                             TRUE ~ msqtot1),
         msqtot4 = case_when(msqtot4 == -9999 ~ NA_real_,
                             TRUE ~ msqtot4),
         msqtot7 = case_when(msqtot7 == -9999 ~ NA_real_,
                             TRUE ~ msqtot7),
         cblack = black - mean(black, na.rm = TRUE)
         )

Ex0305 - lavaan

Lavaan currently doesn’t do mixture models

Ex0305 - MplusAutomation (input)

ex0305mod.mplus <-  mplusObject(
    ANALYSIS = "ESTIMATOR = MLR; 
                TYPE = random mixture ;",
    VARIABLE = "CLASSES = cg(2) ; 
                TSCORES = age1 age4 age7 ;
                KNOWNCLASS = cg (black = 0 black = 1) ;", 
    MODEL = "%OVERALL%
            i s | msqtot1-msqtot7 AT age1-age7;
            %cg#1%
            i* s* ;
            s with i* ;
            msqtot1-msqtot7*(1);
            %cg#2%
            i* s* ;
            s with i* ;
            msqtot1-msqtot7*(2);",
    OUTPUT = "STDYX; tech1;",
    usevariables = c("msqtot1", "msqtot4", "msqtot7", "age1", "age4", "age7", "black"),
    rdata = msq0305
  )
ex0305fit.mplus <- mplusModeler(ex0305mod.mplus,
                          dataout = "ex0305.dat",
                          modelout = "ex0305.inp",
                          run = TRUE) 
## 
## Running model: ex0305.inp 
## System command: cd "/Users/douglastommet/Dropbox/work/ShortCourse/POSTED/SLIDES/LDA/lavaan" && "/Applications/Mplus/mplus" "ex0305.inp" 
## Reading model:  ex0305.out
file.remove("ex0305.inp")
## [1] TRUE

Ex0305 - MplusAutomation (output)

# readModels("ex0305.out")
MplusAutomation::readModels("ex0305.out", what="summaries")
## Reading model:  ex0305.out
## Estimated using MLR 
## Number of obs: 14059, number of (free) parameters: 13 
## 
## Fit Indices: 
## 
## CFI = NA, TLI = NA, SRMR = NA 
## RMSEA = NA, 90% CI [NA, NA], p < .05 = NA 
## AIC = 116193.965, BIC = 116292.128 
## NULL
MplusAutomation::readModels("ex0305.out")[["parameters"]][["unstandardized"]]
## Reading model:  ex0305.out
##           paramHeader   param    est    se  est_se    pval
## 1              S.WITH       I  0.116 0.008  13.983   0.000
## 2               Means       I  4.917 0.010 510.796   0.000
## 3               Means       S -0.255 0.007 -37.001   0.000
## 4          Intercepts MSQTOT1  0.000 0.000 999.000 999.000
## 5          Intercepts MSQTOT4  0.000 0.000 999.000 999.000
## 6          Intercepts MSQTOT7  0.000 0.000 999.000 999.000
## 7           Variances       I  0.492 0.022  22.584   0.000
## 8           Variances       S  0.087 0.010   8.382   0.000
## 9  Residual.Variances MSQTOT1  0.769 0.013  60.974   0.000
## 10 Residual.Variances MSQTOT4  0.769 0.013  60.974   0.000
## 11 Residual.Variances MSQTOT7  0.769 0.013  60.974   0.000
## 12             S.WITH       I  0.133 0.021   6.218   0.000
## 13              Means       I  4.180 0.025 165.347   0.000
## 14              Means       S -0.333 0.017 -19.317   0.000
## 15         Intercepts MSQTOT1  0.000 0.000 999.000 999.000
## 16         Intercepts MSQTOT4  0.000 0.000 999.000 999.000
## 17         Intercepts MSQTOT7  0.000 0.000 999.000 999.000
## 18          Variances       I  1.084 0.055  19.845   0.000
## 19          Variances       S  0.078 0.023   3.393   0.001
## 20 Residual.Variances MSQTOT1  1.002 0.032  31.767   0.000
## 21 Residual.Variances MSQTOT4  1.002 0.032  31.767   0.000
## 22 Residual.Variances MSQTOT7  1.002 0.032  31.767   0.000
## 23              Means    CG#1  1.409 0.021  66.359   0.000
##                     LatentClass
## 1                             1
## 2                             1
## 3                             1
## 4                             1
## 5                             1
## 6                             1
## 7                             1
## 8                             1
## 9                             1
## 10                            1
## 11                            1
## 12                            2
## 13                            2
## 14                            2
## 15                            2
## 16                            2
## 17                            2
## 18                            2
## 19                            2
## 20                            2
## 21                            2
## 22                            2
## 23 Categorical.Latent.Variables
MplusAutomation::readModels("ex0305.out")[["tech1"]]
## Reading model:  ex0305.out
## $parameterSpecification
## $alpha.c
##   CG#1 CG#2
## 1   13    0
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $startingValues
## $alpha.c
##   CG#1 CG#2
## 1    0    0
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## attr(,"class")
## [1] "mplus.tech1" "list"

Getting the data for example 6

address <- "https://lvmworkshop.s3.amazonaws.com/LDA/ex0306.dat"

sbp0306 <- read_csv(address, 
                    col_names=c("sbp0", "sbp3", "sbp6", "sbp9", "trt2")) 

sbp0306 <- sbp0306 %>%
  mutate(sbp0 = case_when(sbp0 == -9999 ~ NA_real_,
                             TRUE ~ sbp0),
         sbp3 = case_when(sbp3 == -9999 ~ NA_real_,
                             TRUE ~ sbp3),
         sbp6 = case_when(sbp6 == -9999 ~ NA_real_,
                             TRUE ~ sbp6),
         sbp9 = case_when(sbp9 == -9999 ~ NA_real_,
                             TRUE ~ sbp9)
         )

Ex0306 - lavaan

Can’t get the group option to work

Ex0306 - MplusAutomation (input)

ex0306mod.mplus <-  mplusObject(
    ANALYSIS = "ESTIMATOR = MLR; ",
    VARIABLE = "GROUPING = trt2(0 = active 1= placebo) ;", 
    MODEL = "i s | sbp0@0 sbp3@0.5 sbp6@1 sbp9@1.5 ;
            sbp0 sbp3 sbp6 sbp9 * (1) ;
            p by sbp0@0 sbp3@1 sbp6@1 sbp9@1 ;
            p@0 ;
            [p*0] ;
            i s with p@0 ;
            [i] ;
            [s] ;
            i* (21) ;
            s* (22) ;
            s with i* (23) ;
            s_a by sbp0@0 sbp3@0.5 sbp6@1 sbp9@1.5 ;
            [s_a@0] ;
            s_a@0 ;
            s_a on i@0 ;
            i s with s_a @0 ;
          MODEL active:
            [p*] (p_a) ;
            sbp0 sbp3 sbp6 sbp9 * (1) ;
            i* (21) ;
            s* (22) ;
            s with i* (23) ;
            [s*] (42) ;
            p on i* (51) ;
            s_a by sbp0@0 sbp3@0.5 sbp6@1 sbp9@1.5 ;
            [s_a*] ;
            s_a@0 ;
            s_a on i*0 ;
            i s with s_a @0 ;
          MODEL placebo:
            [p*] (p_p) ;
            sbp0 sbp3 sbp6 sbp9 * (1) ;
            i* (21) ;
            s* (22) ;
            s with i* (23) ;
            [s*] (42) ;
            p on i* (51) ;
          MODEL CONSTRAINT :
            NEW d_ap ;
            d_ap = p_a-p_p ; ",
    OUTPUT = "STDYX; tech1;",
    usevariables = c("sbp0", "sbp3", "sbp6", "sbp9", "trt2"),
    rdata = sbp0306
  )
ex0306fit.mplus <- mplusModeler(ex0306mod.mplus,
                          dataout = "ex0306.dat",
                          modelout = "ex0306.inp",
                          run = TRUE) 
## 
## Running model: ex0306.inp 
## System command: cd "/Users/douglastommet/Dropbox/work/ShortCourse/POSTED/SLIDES/LDA/lavaan" && "/Applications/Mplus/mplus" "ex0306.inp" 
## Reading model:  ex0306.out
file.remove("ex0306.inp")
## [1] TRUE

Ex0306 - MplusAutomation (output)

# readModels("ex0306.out")
MplusAutomation::readModels("ex0306.out", what="summaries")
## Reading model:  ex0306.out
## Estimated using MLR 
## Number of obs: 358, number of (free) parameters: 12 
## 
## Model: Chi2(df = 16) = 33.861, p = 0.0057 
## Baseline model: Chi2(df = 12) = 450.165, p = 0 
## 
## Fit Indices: 
## 
## CFI = 0.959, TLI = 0.969, SRMR = 0.112 
## RMSEA = 0.079, 90% CI [0.041, 0.116], p < .05 = 0.094 
## AIC = 10796.768, BIC = 10843.335 
## NULL
MplusAutomation::readModels("ex0306.out")[["parameters"]][["unstandardized"]]
## Reading model:  ex0306.out
##                  paramHeader param     est     se  est_se    pval   Group
## 1                        I.|  SBP0   1.000  0.000 999.000 999.000  ACTIVE
## 2                        I.|  SBP3   1.000  0.000 999.000 999.000  ACTIVE
## 3                        I.|  SBP6   1.000  0.000 999.000 999.000  ACTIVE
## 4                        I.|  SBP9   1.000  0.000 999.000 999.000  ACTIVE
## 5                        S.|  SBP0   0.000  0.000 999.000 999.000  ACTIVE
## 6                        S.|  SBP3   0.500  0.000 999.000 999.000  ACTIVE
## 7                        S.|  SBP6   1.000  0.000 999.000 999.000  ACTIVE
## 8                        S.|  SBP9   1.500  0.000 999.000 999.000  ACTIVE
## 9                       P.BY  SBP0   0.000  0.000 999.000 999.000  ACTIVE
## 10                      P.BY  SBP3   1.000  0.000 999.000 999.000  ACTIVE
## 11                      P.BY  SBP6   1.000  0.000 999.000 999.000  ACTIVE
## 12                      P.BY  SBP9   1.000  0.000 999.000 999.000  ACTIVE
## 13                    S_A.BY  SBP0   0.000  0.000 999.000 999.000  ACTIVE
## 14                    S_A.BY  SBP3   0.500  0.000 999.000 999.000  ACTIVE
## 15                    S_A.BY  SBP6   1.000  0.000 999.000 999.000  ACTIVE
## 16                    S_A.BY  SBP9   1.500  0.000 999.000 999.000  ACTIVE
## 17                    S_A.ON     I  -0.368  0.105  -3.507   0.000  ACTIVE
## 18                      P.ON     I   0.219  0.132   1.660   0.097  ACTIVE
## 19                    I.WITH     P   0.000  0.000 999.000 999.000  ACTIVE
## 20                    I.WITH     S   6.886 11.210   0.614   0.539  ACTIVE
## 21                    I.WITH   S_A   0.000  0.000 999.000 999.000  ACTIVE
## 22                    S.WITH     P   0.000  0.000 999.000 999.000  ACTIVE
## 23                    S.WITH   S_A   0.000  0.000 999.000 999.000  ACTIVE
## 24                     Means     P -19.054  1.669 -11.416   0.000  ACTIVE
## 25                     Means     I  -1.804  1.109  -1.627   0.104  ACTIVE
## 26                     Means     S   1.371  0.931   1.471   0.141  ACTIVE
## 27                Intercepts  SBP0   0.000  0.000 999.000 999.000  ACTIVE
## 28                Intercepts  SBP3   0.000  0.000 999.000 999.000  ACTIVE
## 29                Intercepts  SBP6   0.000  0.000 999.000 999.000  ACTIVE
## 30                Intercepts  SBP9   0.000  0.000 999.000 999.000  ACTIVE
## 31                Intercepts   S_A   0.639  1.595   0.401   0.689  ACTIVE
## 32                 Variances     P   0.000  0.000 999.000 999.000  ACTIVE
## 33                 Variances     I  72.092  9.963   7.236   0.000  ACTIVE
## 34                 Variances     S   9.704  6.587   1.473   0.141  ACTIVE
## 35        Residual.Variances  SBP0  78.640  4.718  16.668   0.000  ACTIVE
## 36        Residual.Variances  SBP3  78.640  4.718  16.668   0.000  ACTIVE
## 37        Residual.Variances  SBP6  78.640  4.718  16.668   0.000  ACTIVE
## 38        Residual.Variances  SBP9  78.640  4.718  16.668   0.000  ACTIVE
## 39        Residual.Variances   S_A   0.000  0.000 999.000 999.000  ACTIVE
## 40                       I.|  SBP0   1.000  0.000 999.000 999.000 PLACEBO
## 41                       I.|  SBP3   1.000  0.000 999.000 999.000 PLACEBO
## 42                       I.|  SBP6   1.000  0.000 999.000 999.000 PLACEBO
## 43                       I.|  SBP9   1.000  0.000 999.000 999.000 PLACEBO
## 44                       S.|  SBP0   0.000  0.000 999.000 999.000 PLACEBO
## 45                       S.|  SBP3   0.500  0.000 999.000 999.000 PLACEBO
## 46                       S.|  SBP6   1.000  0.000 999.000 999.000 PLACEBO
## 47                       S.|  SBP9   1.500  0.000 999.000 999.000 PLACEBO
## 48                      P.BY  SBP0   0.000  0.000 999.000 999.000 PLACEBO
## 49                      P.BY  SBP3   1.000  0.000 999.000 999.000 PLACEBO
## 50                      P.BY  SBP6   1.000  0.000 999.000 999.000 PLACEBO
## 51                      P.BY  SBP9   1.000  0.000 999.000 999.000 PLACEBO
## 52                    S_A.BY  SBP0   0.000  0.000 999.000 999.000 PLACEBO
## 53                    S_A.BY  SBP3   0.500  0.000 999.000 999.000 PLACEBO
## 54                    S_A.BY  SBP6   1.000  0.000 999.000 999.000 PLACEBO
## 55                    S_A.BY  SBP9   1.500  0.000 999.000 999.000 PLACEBO
## 56                    S_A.ON     I   0.000  0.000 999.000 999.000 PLACEBO
## 57                      P.ON     I   0.219  0.132   1.660   0.097 PLACEBO
## 58                    I.WITH     P   0.000  0.000 999.000 999.000 PLACEBO
## 59                    I.WITH     S   6.886 11.210   0.614   0.539 PLACEBO
## 60                    I.WITH   S_A   0.000  0.000 999.000 999.000 PLACEBO
## 61                    S.WITH     P   0.000  0.000 999.000 999.000 PLACEBO
## 62                    S.WITH   S_A   0.000  0.000 999.000 999.000 PLACEBO
## 63                     Means     P -11.623  1.123 -10.349   0.000 PLACEBO
## 64                     Means     I   0.960  0.802   1.198   0.231 PLACEBO
## 65                     Means     S   1.371  0.931   1.471   0.141 PLACEBO
## 66                Intercepts  SBP0   0.000  0.000 999.000 999.000 PLACEBO
## 67                Intercepts  SBP3   0.000  0.000 999.000 999.000 PLACEBO
## 68                Intercepts  SBP6   0.000  0.000 999.000 999.000 PLACEBO
## 69                Intercepts  SBP9   0.000  0.000 999.000 999.000 PLACEBO
## 70                Intercepts   S_A   0.000  0.000 999.000 999.000 PLACEBO
## 71                 Variances     P   0.000  0.000 999.000 999.000 PLACEBO
## 72                 Variances     I  72.092  9.963   7.236   0.000 PLACEBO
## 73                 Variances     S   9.704  6.587   1.473   0.141 PLACEBO
## 74        Residual.Variances  SBP0  78.640  4.718  16.668   0.000 PLACEBO
## 75        Residual.Variances  SBP3  78.640  4.718  16.668   0.000 PLACEBO
## 76        Residual.Variances  SBP6  78.640  4.718  16.668   0.000 PLACEBO
## 77        Residual.Variances  SBP9  78.640  4.718  16.668   0.000 PLACEBO
## 78        Residual.Variances   S_A   0.000  0.000 999.000 999.000 PLACEBO
## 79 New.Additional.Parameters  D_AP  -7.431  2.011  -3.696   0.000 PLACEBO
MplusAutomation::readModels("ex0306.out")[["tech1"]]
## Reading model:  ex0306.out
## $parameterSpecification
## $ACTIVE
## $nu
##   SBP0 SBP3 SBP6 SBP9
## 1    0    0    0    0
## 
## $lambda
##      P S_A I S
## SBP0 0   0 0 0
## SBP3 0   0 0 0
## SBP6 0   0 0 0
## SBP9 0   0 0 0
## 
## $theta
##      SBP0 SBP3 SBP6 SBP9
## SBP0    1   NA   NA   NA
## SBP3    0    1   NA   NA
## SBP6    0    0    1   NA
## SBP9    0    0    0    1
## 
## $alpha
##   P S_A I S
## 1 2   3 4 5
## 
## $beta
##     P S_A I S
## P   0   0 6 0
## S_A 0   0 7 0
## I   0   0 0 0
## S   0   0 0 0
## 
## $psi
##     P S_A  I  S
## P   0  NA NA NA
## S_A 0   0 NA NA
## I   0   0  8 NA
## S   0   0  9 10
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $PLACEBO
## $nu
##   SBP0 SBP3 SBP6 SBP9
## 1    0    0    0    0
## 
## $lambda
##      P S_A I S
## SBP0 0   0 0 0
## SBP3 0   0 0 0
## SBP6 0   0 0 0
## SBP9 0   0 0 0
## 
## $theta
##      SBP0 SBP3 SBP6 SBP9
## SBP0    1   NA   NA   NA
## SBP3    0    1   NA   NA
## SBP6    0    0    1   NA
## SBP9    0    0    0    1
## 
## $alpha
##    P S_A  I S
## 1 11   0 12 5
## 
## $beta
##     P S_A I S
## P   0   0 6 0
## S_A 0   0 0 0
## I   0   0 0 0
## S   0   0 0 0
## 
## $psi
##     P S_A  I  S
## P   0  NA NA NA
## S_A 0   0 NA NA
## I   0   0  8 NA
## S   0   0  9 10
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $THE.ADDITIONAL.PARAMETERS
## list()
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## attr(,"group.names")
## [1] "ACTIVE"                    "PLACEBO"                  
## [3] "THE.ADDITIONAL.PARAMETERS"
## 
## $startingValues
## $ACTIVE
## $nu
##   SBP0 SBP3 SBP6 SBP9
## 1    0    0    0    0
## 
## $lambda
##      P S_A I   S
## SBP0 0 0.0 1 0.0
## SBP3 1 0.5 1 0.5
## SBP6 1 1.0 1 1.0
## SBP9 1 1.5 1 1.5
## 
## $theta
##        SBP0   SBP3   SBP6   SBP9
## SBP0 78.645     NA     NA     NA
## SBP3  0.000 55.219     NA     NA
## SBP6  0.000  0.000 69.928     NA
## SBP9  0.000  0.000  0.000 68.633
## 
## $alpha
##   P S_A I S
## 1 0   0 0 0
## 
## $beta
##     P S_A I S
## P   0   0 0 0
## S_A 0   0 0 0
## I   0   0 0 0
## S   0   0 0 0
## 
## $psi
##     P S_A       I      S
## P   0  NA      NA     NA
## S_A 0   0      NA     NA
## I   0   0 114.603     NA
## S   0   0   0.000 64.768
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## $PLACEBO
## $nu
##   SBP0 SBP3 SBP6 SBP9
## 1    0    0    0    0
## 
## $lambda
##      P S_A I   S
## SBP0 0 0.0 1 0.0
## SBP3 1 0.5 1 0.5
## SBP6 1 1.0 1 1.0
## SBP9 1 1.5 1 1.5
## 
## $theta
##        SBP0   SBP3   SBP6   SBP9
## SBP0 78.645     NA     NA     NA
## SBP3  0.000 55.219     NA     NA
## SBP6  0.000  0.000 69.928     NA
## SBP9  0.000  0.000  0.000 68.633
## 
## $alpha
##   P S_A I S
## 1 0   0 0 0
## 
## $beta
##     P S_A I S
## P   0   0 0 0
## S_A 0   0 0 0
## I   0   0 0 0
## S   0   0 0 0
## 
## $psi
##     P S_A       I      S
## P   0  NA      NA     NA
## S_A 0   0      NA     NA
## I   0   0 114.603     NA
## S   0   0   0.000 64.768
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## $THE.ADDITIONAL.PARAMETERS
## list()
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## attr(,"group.names")
## [1] "ACTIVE"                    "PLACEBO"                  
## [3] "THE.ADDITIONAL.PARAMETERS"
## 
## attr(,"class")
## [1] "mplus.tech1" "list"

Getting the data for example 8

address <- "https://lvmworkshop.s3.amazonaws.com/LDA/ex0308.dat"

act0308 <- read_csv(address, col_names=c("n0", "n1", "f0", "f1", "tx"))

act0308 <- act0308 %>%
  mutate(n0 = case_when(n0 == -9999 ~ NA_real_,
                        TRUE ~ n0),
         n1 = case_when(n1 == -9999 ~ NA_real_,
                        TRUE ~ n1),
         f0 = case_when(f0 == -9999 ~ NA_real_,
                        TRUE ~ f0),
         f1 = case_when(f1 == -9999 ~ NA_real_,
                        TRUE ~ f1)
         )

Ex0308 - MplusAutomation (input)

ex0308mod.mplus <-  mplusObject(
    ANALYSIS = "ESTIMATOR = MLR; ",
    VARIABLE = "GROUPING IS tx (0 = control 1 = treat) ;", 
    MODEL = "df by f1 @1 ; 
            dn by n1 @1 ; 
            [n0*] (101) ; 
            [f0*] (102) ; 
            n0 with f0 * (5)  ; 
            n0* (201)  ; 
            f0* (202)  ; 
            n1 on n0 @1 ; 
            dn on n0 * (1)  ; 
            df on n0 * (3)  ; 
            dn on f0 * (2)  ; 
            df on f0 * (4)  ; 
            f1 on f0 @1 ; 
            dn* (9)  ; 
            [dn*] (7) ; 
            df on dn * (6)  ; 
            df* (10)  ; 
            [df*] (8) ; 
            [n1@0] ; 
            [f1@0] ; 
            n1 @0 ; 
            f1 @0 ; 
          MODEL control: 
            [dn*]  ; 
            [df*]  ; 
          MODEL treat: 
            [dn*]  ; 
            [df*]  ; ",
    OUTPUT = "STDYX; tech1;",
    usevariables = c("n0", "n1", "f0", "f1", "tx"),
    rdata = act0308
  )
ex0308fit.mplus <- mplusModeler(ex0308mod.mplus,
                          dataout = "ex0308.dat",
                          modelout = "ex0308.inp",
                          run = TRUE) 
## 
## Running model: ex0308.inp 
## System command: cd "/Users/douglastommet/Dropbox/work/ShortCourse/POSTED/SLIDES/LDA/lavaan" && "/Applications/Mplus/mplus" "ex0308.inp" 
## Reading model:  ex0308.out
file.remove("ex0308.inp")
## [1] TRUE

Ex0308 - MplusAutomation (output)

# readModels("ex0308.out")
MplusAutomation::readModels("ex0308.out", what="summaries")
## Reading model:  ex0308.out
## Estimated using MLR 
## Number of obs: 1397, number of (free) parameters: 16 
## 
## Model: Chi2(df = 12) = 38.34, p = 1e-04 
## Baseline model: Chi2(df = 10) = 3321.896, p = 0 
## 
## Fit Indices: 
## 
## CFI = 0.992, TLI = 0.993, SRMR = 0.028 
## RMSEA = 0.056, 90% CI [0.037, 0.076], p < .05 = 0.28 
## AIC = 42403.152, BIC = 42487.025 
## NULL
MplusAutomation::readModels("ex0308.out")[["parameters"]][["unstandardized"]]
## Reading model:  ex0308.out
##           paramHeader param     est     se  est_se   pval   Group
## 1               DF.BY    F1   1.000  0.000 999.000 999.00 CONTROL
## 2               DN.BY    N1   1.000  0.000 999.000 999.00 CONTROL
## 3               DF.ON    DN   0.129  0.026   4.924   0.00 CONTROL
## 4               DN.ON    N0  -0.241  0.021 -11.747   0.00 CONTROL
## 5               DN.ON    F0   0.186  0.019   9.995   0.00 CONTROL
## 6               DF.ON    N0   0.199  0.022   9.066   0.00 CONTROL
## 7               DF.ON    F0  -0.273  0.020 -13.815   0.00 CONTROL
## 8               N1.ON    N0   1.000  0.000 999.000 999.00 CONTROL
## 9               F1.ON    F0   1.000  0.000 999.000 999.00 CONTROL
## 10            N0.WITH    F0 254.206 10.253  24.793   0.00 CONTROL
## 11              Means    N0  32.536  0.496  65.533   0.00 CONTROL
## 12              Means    F0  65.875  0.549 119.980   0.00 CONTROL
## 13         Intercepts    N1   0.000  0.000 999.000 999.00 CONTROL
## 14         Intercepts    F1   0.000  0.000 999.000 999.00 CONTROL
## 15         Intercepts    DF  12.249  1.042  11.755   0.00 CONTROL
## 16         Intercepts    DN   1.459  0.937   1.556   0.12 CONTROL
## 17          Variances    N0 344.506 12.237  28.152   0.00 CONTROL
## 18          Variances    F0 420.510 14.849  28.320   0.00 CONTROL
## 19 Residual.Variances    N1   0.000  0.000 999.000 999.00 CONTROL
## 20 Residual.Variances    F1   0.000  0.000 999.000 999.00 CONTROL
## 21 Residual.Variances    DF  98.608  4.235  23.283   0.00 CONTROL
## 22 Residual.Variances    DN 108.300  4.290  25.243   0.00 CONTROL
## 23              DF.BY    F1   1.000  0.000 999.000 999.00   TREAT
## 24              DN.BY    N1   1.000  0.000 999.000 999.00   TREAT
## 25              DF.ON    DN   0.129  0.026   4.924   0.00   TREAT
## 26              DN.ON    N0  -0.241  0.021 -11.747   0.00   TREAT
## 27              DN.ON    F0   0.186  0.019   9.995   0.00   TREAT
## 28              DF.ON    N0   0.199  0.022   9.066   0.00   TREAT
## 29              DF.ON    F0  -0.273  0.020 -13.815   0.00   TREAT
## 30              N1.ON    N0   1.000  0.000 999.000 999.00   TREAT
## 31              F1.ON    F0   1.000  0.000 999.000 999.00   TREAT
## 32            N0.WITH    F0 254.206 10.253  24.793   0.00   TREAT
## 33              Means    N0  32.536  0.496  65.533   0.00   TREAT
## 34              Means    F0  65.875  0.549 119.980   0.00   TREAT
## 35         Intercepts    N1   0.000  0.000 999.000 999.00   TREAT
## 36         Intercepts    F1   0.000  0.000 999.000 999.00   TREAT
## 37         Intercepts    DF  11.327  1.140   9.938   0.00   TREAT
## 38         Intercepts    DN  11.688  1.054  11.084   0.00   TREAT
## 39          Variances    N0 344.506 12.237  28.152   0.00   TREAT
## 40          Variances    F0 420.510 14.849  28.320   0.00   TREAT
## 41 Residual.Variances    N1   0.000  0.000 999.000 999.00   TREAT
## 42 Residual.Variances    F1   0.000  0.000 999.000 999.00   TREAT
## 43 Residual.Variances    DF  98.608  4.235  23.283   0.00   TREAT
## 44 Residual.Variances    DN 108.300  4.290  25.243   0.00   TREAT
MplusAutomation::readModels("ex0308.out")[["tech1"]]
## Reading model:  ex0308.out
## $parameterSpecification
## $CONTROL
## $nu
##   N1 F1 N0 F0
## 1  0  0  0  0
## 
## $lambda
##    DF DN N1 F1 N0 F0
## N1  0  0  0  0  0  0
## F1  0  0  0  0  0  0
## N0  0  0  0  0  0  0
## F0  0  0  0  0  0  0
## 
## $theta
##    N1 F1 N0 F0
## N1  0 NA NA NA
## F1  0  0 NA NA
## N0  0  0  0 NA
## F0  0  0  0  0
## 
## $alpha
##   DF DN N1 F1 N0 F0
## 1  1  2  0  0  3  4
## 
## $beta
##    DF DN N1 F1 N0 F0
## DF  0  5  0  0  6  7
## DN  0  0  0  0  8  9
## N1  0  0  0  0  0  0
## F1  0  0  0  0  0  0
## N0  0  0  0  0  0  0
## F0  0  0  0  0  0  0
## 
## $psi
##    DF DN N1 F1 N0 F0
## DF 10 NA NA NA NA NA
## DN  0 11 NA NA NA NA
## N1  0  0  0 NA NA NA
## F1  0  0  0  0 NA NA
## N0  0  0  0  0 12 NA
## F0  0  0  0  0 13 14
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $TREAT
## $nu
##   N1 F1 N0 F0
## 1  0  0  0  0
## 
## $lambda
##    DF DN N1 F1 N0 F0
## N1  0  0  0  0  0  0
## F1  0  0  0  0  0  0
## N0  0  0  0  0  0  0
## F0  0  0  0  0  0  0
## 
## $theta
##    N1 F1 N0 F0
## N1  0 NA NA NA
## F1  0  0 NA NA
## N0  0  0  0 NA
## F0  0  0  0  0
## 
## $alpha
##   DF DN N1 F1 N0 F0
## 1 15 16  0  0  3  4
## 
## $beta
##    DF DN N1 F1 N0 F0
## DF  0  5  0  0  6  7
## DN  0  0  0  0  8  9
## N1  0  0  0  0  0  0
## F1  0  0  0  0  0  0
## N0  0  0  0  0  0  0
## F0  0  0  0  0  0  0
## 
## $psi
##    DF DN N1 F1 N0 F0
## DF 10 NA NA NA NA NA
## DN  0 11 NA NA NA NA
## N1  0  0  0 NA NA NA
## F1  0  0  0  0 NA NA
## N0  0  0  0  0 12 NA
## F0  0  0  0  0 13 14
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## attr(,"group.names")
## [1] "CONTROL" "TREAT"  
## 
## $startingValues
## $CONTROL
## $nu
##   N1 F1 N0 F0
## 1  0  0  0  0
## 
## $lambda
##    DF DN N1 F1 N0 F0
## N1  0  0  1  0  0  0
## F1  0  0  0  1  0  0
## N0  0  0  0  0  1  0
## F0  0  0  0  0  0  1
## 
## $theta
##    N1 F1 N0 F0
## N1  0 NA NA NA
## F1  0  0 NA NA
## N0  0  0  0 NA
## F0  0  0  0  0
## 
## $alpha
##   DF DN N1 F1 N0 F0
## 1  0  0  0  0  0  0
## 
## $beta
##    DF DN N1 F1 N0 F0
## DF  0  0  0  0  0  0
## DN  0  0  0  0  0  0
## N1  0  1  0  0  1  0
## F1  1  0  0  0  0  1
## N0  0  0  0  0  0  0
## F0  0  0  0  0  0  0
## 
## $psi
##      DF   DN N1 F1      N0      F0
## DF 0.05   NA NA NA      NA      NA
## DN 0.00 0.05 NA NA      NA      NA
## N1 0.00 0.00  0 NA      NA      NA
## F1 0.00 0.00  0  0      NA      NA
## N0 0.00 0.00  0  0 170.114      NA
## F0 0.00 0.00  0  0   0.000 213.785
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## $TREAT
## $nu
##   N1 F1 N0 F0
## 1  0  0  0  0
## 
## $lambda
##    DF DN N1 F1 N0 F0
## N1  0  0  1  0  0  0
## F1  0  0  0  1  0  0
## N0  0  0  0  0  1  0
## F0  0  0  0  0  0  1
## 
## $theta
##    N1 F1 N0 F0
## N1  0 NA NA NA
## F1  0  0 NA NA
## N0  0  0  0 NA
## F0  0  0  0  0
## 
## $alpha
##   DF DN N1 F1 N0 F0
## 1  0  0  0  0  0  0
## 
## $beta
##    DF DN N1 F1 N0 F0
## DF  0  0  0  0  0  0
## DN  0  0  0  0  0  0
## N1  0  1  0  0  1  0
## F1  1  0  0  0  0  1
## N0  0  0  0  0  0  0
## F0  0  0  0  0  0  0
## 
## $psi
##      DF   DN N1 F1      N0      F0
## DF 0.05   NA NA NA      NA      NA
## DN 0.00 0.05 NA NA      NA      NA
## N1 0.00 0.00  0 NA      NA      NA
## F1 0.00 0.00  0  0      NA      NA
## N0 0.00 0.00  0  0 170.114      NA
## F0 0.00 0.00  0  0   0.000 213.785
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## attr(,"group.names")
## [1] "CONTROL" "TREAT"  
## 
## attr(,"class")
## [1] "mplus.tech1" "list"

Getting the data for example 8b

address <- "https://lvmworkshop.s3.amazonaws.com/LDA/ex0308b.dat"

act0308b <- read_csv(address, 
                     col_names=c("n01", "n02", "n03", 
                                 "n11", "n12", "n13", "tx")) 

act0308b <- act0308b %>%
  mutate(n01 = case_when(n01 == -9999 ~ NA_real_,
                         TRUE ~ n01),
         n02 = case_when(n02 == -9999 ~ NA_real_,
                         TRUE ~ n02),
         n03 = case_when(n03 == -9999 ~ NA_real_,
                         TRUE ~ n03),
         n11 = case_when(n11 == -9999 ~ NA_real_,
                         TRUE ~ n11),
         n12 = case_when(n12 == -9999 ~ NA_real_,
                         TRUE ~ n12),
         n13 = case_when(n13 == -9999 ~ NA_real_,
                         TRUE ~ n13)
         )

Ex0308b - MplusAutomation (input)

ex0308bmod.mplus <-  mplusObject(
    ANALYSIS = "ESTIMATOR = MLR; ",
    VARIABLE = "GROUPING IS tx (0 = control 1 = treat) ;", 
    MODEL = "[n01 ] (1)  ; 
            [n02 ] (2)  ; 
            [n03 ] (3)  ; 
            [n11 ] (1)  ; 
            [n12 ] (2)  ; 
            [n13 ] (3)  ; 
            n01* (4) ; 
            n02* (5) ; 
            n03* (6) ; 
            n11* (4) ; 
            n12* (5) ; 
            n13* (6) ; 
            n0 by n01@1  ; 
            n0 by n02* (7)  ; 
            n0 by n03* (8) ; 
            n1 by n11@1  ; 
            n1 by n12* (7)  ; 
            n1 by n13* (8) ; 
            [n0@0] ; 
            [n1@0] ; 
            n0* (9) ; 
            n1@0  ; 
            n1 on n0 @1 ; 
            dn by n1 @1 ; 
            dn*  ; 
            dn on n0*  ; 
            n01 with n11 * (31)  ; 
            n02 with n12 * (32)  ; 
            n03 with n13 * (33)  ;  
          MODEL control: 
            n01* (4) ; 
            n02* (5) ; 
            n03* (6) ; 
            n11* (4) ; 
            n12* (5) ; 
            n13* (6) ; 
            [dn*0]  ; 
            dn*  ; 
            dn on n0*  ;  
          MODEL treat: 
            n01* (4) ; 
            n02* (5) ; 
            n03* (6) ; 
            n11* (4) ; 
            n12* (5) ; 
            n13* (6) ; 
            [dn*0]  ; 
            dn*  ; 
            dn on n0*  ;  ",
    OUTPUT = "STDYX; tech1;",
    usevariables = c("n01", "n02", "n03", "n11", "n12", "n13", "tx"),
    rdata = act0308b
  )
ex0308bfit.mplus <- mplusModeler(ex0308bmod.mplus,
                          dataout = "ex0308b.dat",
                          modelout = "ex0308b.inp",
                          run = TRUE) 
## 
## Running model: ex0308b.inp 
## System command: cd "/Users/douglastommet/Dropbox/work/ShortCourse/POSTED/SLIDES/LDA/lavaan" && "/Applications/Mplus/mplus" "ex0308b.inp" 
## Reading model:  ex0308b.out
file.remove("ex0308b.inp")
## [1] TRUE

Ex0308b - MplusAutomation (output)

# readModels("ex0308b.out")
MplusAutomation::readModels("ex0308b.out", what="summaries")
## Reading model:  ex0308b.out
## Estimated using MLR 
## Number of obs: 1397, number of (free) parameters: 18 
## 
## Model: Chi2(df = 36) = 123.447, p = 0 
## Baseline model: Chi2(df = 30) = 6570.433, p = 0 
## 
## Fit Indices: 
## 
## CFI = 0.987, TLI = 0.989, SRMR = 0.045 
## RMSEA = 0.059, 90% CI [0.048, 0.071], p < .05 = 0.092 
## AIC = 61360.732, BIC = 61455.09 
## NULL
MplusAutomation::readModels("ex0308b.out")[["parameters"]][["unstandardized"]]
## Reading model:  ex0308b.out
##           paramHeader param     est    se  est_se    pval   Group
## 1               N0.BY   N01   1.000 0.000 999.000 999.000 CONTROL
## 2               N0.BY   N02   1.205 0.018  68.394   0.000 CONTROL
## 3               N0.BY   N03   0.863 0.020  43.838   0.000 CONTROL
## 4               N1.BY   N11   1.000 0.000 999.000 999.000 CONTROL
## 5               N1.BY   N12   1.205 0.018  68.394   0.000 CONTROL
## 6               N1.BY   N13   0.863 0.020  43.838   0.000 CONTROL
## 7               DN.BY    N1   1.000 0.000 999.000 999.000 CONTROL
## 8               N1.ON    N0   1.000 0.000 999.000 999.000 CONTROL
## 9               DN.ON    N0   0.055 0.018   3.074   0.002 CONTROL
## 10           N01.WITH   N11  14.956 3.255   4.595   0.000 CONTROL
## 11           N02.WITH   N12  -7.953 3.792  -2.097   0.036 CONTROL
## 12           N03.WITH   N13  60.511 5.687  10.641   0.000 CONTROL
## 13              Means    N0   0.000 0.000 999.000 999.000 CONTROL
## 14         Intercepts   N01  31.203 0.425  73.487   0.000 CONTROL
## 15         Intercepts   N02  32.788 0.488  67.136   0.000 CONTROL
## 16         Intercepts   N03  37.171 0.470  79.115   0.000 CONTROL
## 17         Intercepts   N11  31.203 0.425  73.487   0.000 CONTROL
## 18         Intercepts   N12  32.788 0.488  67.136   0.000 CONTROL
## 19         Intercepts   N13  37.171 0.470  79.115   0.000 CONTROL
## 20         Intercepts    N1   0.000 0.000 999.000 999.000 CONTROL
## 21         Intercepts    DN   4.721 0.244  19.379   0.000 CONTROL
## 22          Variances    N0 208.031 9.553  21.776   0.000 CONTROL
## 23 Residual.Variances   N01  57.956 3.372  17.187   0.000 CONTROL
## 24 Residual.Variances   N02  41.105 4.025  10.211   0.000 CONTROL
## 25 Residual.Variances   N03 175.812 5.375  32.708   0.000 CONTROL
## 26 Residual.Variances   N11  57.956 3.372  17.187   0.000 CONTROL
## 27 Residual.Variances   N12  41.105 4.025  10.211   0.000 CONTROL
## 28 Residual.Variances   N13 175.812 5.375  32.708   0.000 CONTROL
## 29 Residual.Variances    N1   0.000 0.000 999.000 999.000 CONTROL
## 30 Residual.Variances    DN   1.591 2.589   0.614   0.539 CONTROL
## 31              N0.BY   N01   1.000 0.000 999.000 999.000   TREAT
## 32              N0.BY   N02   1.205 0.018  68.394   0.000   TREAT
## 33              N0.BY   N03   0.863 0.020  43.838   0.000   TREAT
## 34              N1.BY   N11   1.000 0.000 999.000 999.000   TREAT
## 35              N1.BY   N12   1.205 0.018  68.394   0.000   TREAT
## 36              N1.BY   N13   0.863 0.020  43.838   0.000   TREAT
## 37              DN.BY    N1   1.000 0.000 999.000 999.000   TREAT
## 38              N1.ON    N0   1.000 0.000 999.000 999.000   TREAT
## 39              DN.ON    N0   0.077 0.022   3.503   0.000   TREAT
## 40           N01.WITH   N11  14.956 3.255   4.595   0.000   TREAT
## 41           N02.WITH   N12  -7.953 3.792  -2.097   0.036   TREAT
## 42           N03.WITH   N13  60.511 5.687  10.641   0.000   TREAT
## 43              Means    N0   0.000 0.000 999.000 999.000   TREAT
## 44         Intercepts   N01  31.203 0.425  73.487   0.000   TREAT
## 45         Intercepts   N02  32.788 0.488  67.136   0.000   TREAT
## 46         Intercepts   N03  37.171 0.470  79.115   0.000   TREAT
## 47         Intercepts   N11  31.203 0.425  73.487   0.000   TREAT
## 48         Intercepts   N12  32.788 0.488  67.136   0.000   TREAT
## 49         Intercepts   N13  37.171 0.470  79.115   0.000   TREAT
## 50         Intercepts    N1   0.000 0.000 999.000 999.000   TREAT
## 51         Intercepts    DN  12.556 0.333  37.681   0.000   TREAT
## 52          Variances    N0 208.031 9.553  21.776   0.000   TREAT
## 53 Residual.Variances   N01  57.956 3.372  17.187   0.000   TREAT
## 54 Residual.Variances   N02  41.105 4.025  10.211   0.000   TREAT
## 55 Residual.Variances   N03 175.812 5.375  32.708   0.000   TREAT
## 56 Residual.Variances   N11  57.956 3.372  17.187   0.000   TREAT
## 57 Residual.Variances   N12  41.105 4.025  10.211   0.000   TREAT
## 58 Residual.Variances   N13 175.812 5.375  32.708   0.000   TREAT
## 59 Residual.Variances    N1   0.000 0.000 999.000 999.000   TREAT
## 60 Residual.Variances    DN  25.336 3.762   6.735   0.000   TREAT
MplusAutomation::readModels("ex0308b.out")[["tech1"]]
## Reading model:  ex0308b.out
## $parameterSpecification
## $CONTROL
## $nu
##   N01 N02 N03 N11 N12 N13
## 1   1   2   3   1   2   3
## 
## $lambda
##     N0 N1 DN
## N01  0  0  0
## N02  4  0  0
## N03  5  0  0
## N11  0  0  0
## N12  0  4  0
## N13  0  5  0
## 
## $theta
##     N01 N02 N03 N11 N12 N13
## N01   6  NA  NA  NA  NA  NA
## N02   0   7  NA  NA  NA  NA
## N03   0   0   8  NA  NA  NA
## N11   9   0   0   6  NA  NA
## N12   0  10   0   0   7  NA
## N13   0   0  11   0   0   8
## 
## $alpha
##   N0 N1 DN
## 1  0  0 12
## 
## $beta
##    N0 N1 DN
## N0  0  0  0
## N1  0  0  0
## DN 13  0  0
## 
## $psi
##    N0 N1 DN
## N0 14 NA NA
## N1  0  0 NA
## DN  0  0 15
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $TREAT
## $nu
##   N01 N02 N03 N11 N12 N13
## 1   1   2   3   1   2   3
## 
## $lambda
##     N0 N1 DN
## N01  0  0  0
## N02  4  0  0
## N03  5  0  0
## N11  0  0  0
## N12  0  4  0
## N13  0  5  0
## 
## $theta
##     N01 N02 N03 N11 N12 N13
## N01   6  NA  NA  NA  NA  NA
## N02   0   7  NA  NA  NA  NA
## N03   0   0   8  NA  NA  NA
## N11   9   0   0   6  NA  NA
## N12   0  10   0   0   7  NA
## N13   0   0  11   0   0   8
## 
## $alpha
##   N0 N1 DN
## 1  0  0 16
## 
## $beta
##    N0 N1 DN
## N0  0  0  0
## N1  0  0  0
## DN 17  0  0
## 
## $psi
##    N0 N1 DN
## N0 14 NA NA
## N1  0  0 NA
## DN  0  0 18
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## attr(,"group.names")
## [1] "CONTROL" "TREAT"  
## 
## $startingValues
## $CONTROL
## $nu
##      N01    N02   N03    N11    N12    N13
## 1 30.856 31.913 37.92 36.342 38.368 41.106
## 
## $lambda
##        N0    N1 DN
## N01 1.000 0.000  0
## N02 1.233 0.000  0
## N03 0.992 0.000  0
## N11 0.000 1.000  0
## N12 0.000 1.205  0
## N13 0.000 0.887  0
## 
## $theta
##         N01     N02     N03     N11     N12     N13
## N01 128.288      NA      NA      NA      NA      NA
## N02   0.000 170.114      NA      NA      NA      NA
## N03   0.000   0.000 179.775      NA      NA      NA
## N11   0.000   0.000   0.000 145.667      NA      NA
## N12   0.000   0.000   0.000   0.000 183.353      NA
## N13   0.000   0.000   0.000   0.000   0.000 183.121
## 
## $alpha
##   N0 N1 DN
## 1  0  0  0
## 
## $beta
##    N0 N1 DN
## N0  0  0  0
## N1  1  0  1
## DN  0  0  0
## 
## $psi
##      N0 N1   DN
## N0 0.05 NA   NA
## N1 0.00  0   NA
## DN 0.00  0 0.05
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## $TREAT
## $nu
##      N01    N02   N03    N11    N12    N13
## 1 30.856 31.913 37.92 36.342 38.368 41.106
## 
## $lambda
##        N0    N1 DN
## N01 1.000 0.000  0
## N02 1.182 0.000  0
## N03 0.873 0.000  0
## N11 0.000 1.000  0
## N12 0.000 1.131  0
## N13 0.000 0.899  0
## 
## $theta
##         N01     N02     N03     N11     N12     N13
## N01 128.288      NA      NA      NA      NA      NA
## N02   0.000 170.114      NA      NA      NA      NA
## N03   0.000   0.000 179.775      NA      NA      NA
## N11   0.000   0.000   0.000 145.667      NA      NA
## N12   0.000   0.000   0.000   0.000 183.353      NA
## N13   0.000   0.000   0.000   0.000   0.000 183.121
## 
## $alpha
##   N0 N1 DN
## 1  0  0  0
## 
## $beta
##    N0 N1 DN
## N0  0  0  0
## N1  1  0  1
## DN  0  0  0
## 
## $psi
##      N0 N1   DN
## N0 0.05 NA   NA
## N1 0.00  0   NA
## DN 0.00  0 0.05
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## attr(,"group.names")
## [1] "CONTROL" "TREAT"  
## 
## attr(,"class")
## [1] "mplus.tech1" "list"

Getting the data for example 8c

address <- "https://lvmworkshop.s3.amazonaws.com/LDA/ex0308c.dat"

act0308c <- read_csv(address, 
                     col_names=c("n01", "n02", "n03", 
                                 "n11", "n12", "n13", 
                                 "f01", "f02", "f03", 
                                 "f11", "f13", "tx")) 

act0308c <- act0308c %>%
  mutate(n01 = case_when(n01 == -9999 ~ NA_real_,
                         TRUE ~ n01),
         n02 = case_when(n02 == -9999 ~ NA_real_,
                         TRUE ~ n02),
         n03 = case_when(n03 == -9999 ~ NA_real_,
                         TRUE ~ n03),
         n11 = case_when(n11 == -9999 ~ NA_real_,
                         TRUE ~ n11),
         n12 = case_when(n12 == -9999 ~ NA_real_,
                         TRUE ~ n12),
         n13 = case_when(n13 == -9999 ~ NA_real_,
                         TRUE ~ n13),
         f01 = case_when(f01 == -9999 ~ NA_real_,
                         TRUE ~ f01),
         f02 = case_when(f02 == -9999 ~ NA_real_,
                         TRUE ~ f02),
         f03 = case_when(f03 == -9999 ~ NA_real_,
                         TRUE ~ f03),
         f11 = case_when(f11 == -9999 ~ NA_real_,
                         TRUE ~ f11),
         f13 = case_when(f13 == -9999 ~ NA_real_,
                         TRUE ~ f13)
         )

Ex0308c - MplusAutomation (input)

ex0308cmod.mplus <-  mplusObject(
    ANALYSIS = "ESTIMATOR = MLR; 
                ITERATIONS = 100000 ;
                COVERAGE = 0 ;",
    VARIABLE = "GROUPING IS tx (0 = control 1 = treat) ;", 
    MODEL = "[n01 *31.173] (1001)  ; 
            [n02 *32.834] (1002)  ; 
            [n03 *37.146] (1003)  ; 
            [n11 *31.173] (1001)  ; 
            [n12 *32.824] (1002)  ; 
            [n13 *37.146] (1003)  ; 
            n01* 53.015 (1004) ; 
            n02* 48.564 (1005) ; 
            n03* 173.420 (1006) ; 
            n11* 53.015(1004) ; 
            n12* 48.564(1005) ; 
            n13* 173.420(1006) ; 
            n0 by n01@1  ; 
            n0 by n02*1.183 (1007)  ; 
            n0 by n03*0.862 (1008) ; 
            n1 by n11@1  ; 
            n1 by n12*1.183 (1007)  ; 
            n1 by n13*0.862 (1008) ; 
            [n0@0] ; 
            [n1@0] ; 
            n0*212.093 (1009) ; 
            n1@0  ; 
            n1 on n0 @1 ; 
            dn by n1 @1 ; 
            dn* 13.124 (1011) ; 
            dn on n0*0.057 (1012)  ; 
            n01 with n11 *10.370 (1031)  ; 
            n02 with n12 *-1.694 (1032)  ; 
            n03 with n13 *58.421 (1033)  ; 
            [f01 *66.024] (1)  ; 
            [f02 *65.005] (2)  ; 
            [f03 *49.068] (3)  ; 
            [f11 *66.024] (1)  ; 
            [f13 *49.068] (3)  ; 
            f01* 118.041 (4) ; 
            f02* 120.255 (5) ; 
            f03* 222.307 (6) ; 
            f11* 118.041 (4) ; 
            f13* 222.307 (6) ; 
            f0 by f01@1  ; 
            f0 by f02*0.675 (7)  ; 
            f0 by f03*0.780 (8) ; 
            f1 by f11@1  ; 
            f1 by f13*0.780 (8) ; 
            [f0@0] ; 
            [f1@0] ; 
            f0* 303.838(9) ; 
            f1@0  ; 
            f1 on f0 @1 ; 
            df by f1 @1 ; 
            df* 1.278 (11) ; 
            df on f0*-0.065 (12)  ; 
            f01 with f11 * 62.385 (31)  ; 
            f03 with f13 * 76.967 (33)  ; 
            f0 with n0*214.538 (2004)  ; 
            f0 with n1@0 dn@0  ; 
            n0 with f1@0 df@0  ; 
            df on n0*0.037 (2001) ; 
            dn on f0* (2002) ; 
            df on dn*0.374 (2003) ;  
          MODEL control: 
            [dn*0]  ; 
            n01* (1004) ; 
            n02* (1005) ; 
            n03* (1006) ; 
            n11* (1004) ; 
            n12* (1005) ; 
            n13* (1006) ; 
            [df*0]  ; 
            f01* (4) ; 
            f02* (5) ; 
            f03* (6) ; 
            f11* (4) ; 
            f13* (6) ; 
            f0 with n0* (2004)  ; 
            f0 with n1@0 dn@0  ; 
            n0 with f1@0 df@0  ; 
            df on n0* (2001) ; 
            dn on f0* (2002) ; 
            df on dn* (2003) ;   
          MODEL treat: 
            [dn*0]  ; 
            n01* (1004) ; 
            n02* (1005) ; 
            n03* (1006) ; 
            n11* (1004) ; 
            n12* (1005) ; 
            n13* (1006) ; 
            [df*0]  ; 
            f01* (4) ; 
            f02* (5) ; 
            f03* (6) ; 
            f11* (4) ; 
            f13* (6) ; 
            f0 with n0* (2004)  ; 
            f0 with n1@0 dn@0  ; 
            n0 with f1@0 df@0  ; 
            df on n0* (2001) ; 
            dn on f0* (2002) ; 
            df on dn* (2003) ; ",
    OUTPUT = "STDYX; tech1;",
    usevariables = c("n01", "n02", "n03", "n11", "n12", "n13", "f01", "f02", "f03", "f11", "f13", "tx"),
    rdata = act0308c
  )
ex0308cfit.mplus <- mplusModeler(ex0308cmod.mplus,
                          dataout = "ex0308c.dat",
                          modelout = "ex0308c.inp",
                          run = TRUE) 
## 
## Running model: ex0308c.inp 
## System command: cd "/Users/douglastommet/Dropbox/work/ShortCourse/POSTED/SLIDES/LDA/lavaan" && "/Applications/Mplus/mplus" "ex0308c.inp" 
## Reading model:  ex0308c.out
file.remove("ex0308c.inp")
## [1] TRUE

Ex0308c - MplusAutomation (output)

# readModels("ex0308c.out")
MplusAutomation::readModels("ex0308c.out", what="summaries")
## Reading model:  ex0308c.out
## Estimated using MLR 
## Number of obs: 1397, number of (free) parameters: 35 
## 
## Model: Chi2(df = 119) = 261.501, p = 0 
## Baseline model: Chi2(df = 110) = 12184.669, p = 0 
## 
## Fit Indices: 
## 
## CFI = 0.988, TLI = 0.989, SRMR = 0.041 
## RMSEA = 0.041, 90% CI [0.035, 0.048], p < .05 = 0.982 
## AIC = 114944.871, BIC = 115128.344 
## NULL
MplusAutomation::readModels("ex0308c.out")[["parameters"]][["unstandardized"]]
## Reading model:  ex0308c.out
##            paramHeader param     est     se  est_se    pval   Group
## 1                N0.BY   N01   1.000  0.000 999.000 999.000 CONTROL
## 2                N0.BY   N02   1.183  0.015  80.777   0.000 CONTROL
## 3                N0.BY   N03   0.862  0.020  43.892   0.000 CONTROL
## 4                N1.BY   N11   1.000  0.000 999.000 999.000 CONTROL
## 5                N1.BY   N12   1.183  0.015  80.777   0.000 CONTROL
## 6                N1.BY   N13   0.862  0.020  43.892   0.000 CONTROL
## 7                F0.BY   F01   1.000  0.000 999.000 999.000 CONTROL
## 8                F0.BY   F02   0.675  0.022  30.281   0.000 CONTROL
## 9                F0.BY   F03   0.780  0.025  31.552   0.000 CONTROL
## 10               F1.BY   F11   1.000  0.000 999.000 999.000 CONTROL
## 11               F1.BY   F13   0.780  0.025  31.552   0.000 CONTROL
## 12               DN.BY    N1   1.000  0.000 999.000 999.000 CONTROL
## 13               DF.BY    F1   1.000  0.000 999.000 999.000 CONTROL
## 14               N1.ON    N0   1.000  0.000 999.000 999.000 CONTROL
## 15               DN.ON    N0   0.010  0.035   0.284   0.776 CONTROL
## 16               DN.ON    F0   0.057  0.030   1.884   0.060 CONTROL
## 17               F1.ON    F0   1.000  0.000 999.000 999.000 CONTROL
## 18               DF.ON    F0  -0.065  0.044  -1.477   0.140 CONTROL
## 19               DF.ON    N0   0.037  0.050   0.740   0.459 CONTROL
## 20               DF.ON    DN   0.373  0.146   2.554   0.011 CONTROL
## 21             F0.WITH    N0 214.539  8.854  24.230   0.000 CONTROL
## 22             F0.WITH    N1   0.000  0.000 999.000 999.000 CONTROL
## 23             F0.WITH    DN   0.000  0.000 999.000 999.000 CONTROL
## 24             N0.WITH    F1   0.000  0.000 999.000 999.000 CONTROL
## 25             N0.WITH    DF   0.000  0.000 999.000 999.000 CONTROL
## 26            N01.WITH   N11  10.372  2.503   4.144   0.000 CONTROL
## 27            N02.WITH   N12  -1.693  2.831  -0.598   0.550 CONTROL
## 28            N03.WITH   N13  58.425  5.467  10.687   0.000 CONTROL
## 29            F01.WITH   F11  62.383  6.223  10.024   0.000 CONTROL
## 30            F03.WITH   F13  76.966  8.884   8.663   0.000 CONTROL
## 31               Means    N0   0.000  0.000 999.000 999.000 CONTROL
## 32               Means    F0   0.000  0.000 999.000 999.000 CONTROL
## 33          Intercepts   N01  31.173  0.425  73.308   0.000 CONTROL
## 34          Intercepts   N02  32.833  0.487  67.402   0.000 CONTROL
## 35          Intercepts   N03  37.146  0.470  79.092   0.000 CONTROL
## 36          Intercepts   N11  31.173  0.425  73.308   0.000 CONTROL
## 37          Intercepts   N12  32.833  0.487  67.402   0.000 CONTROL
## 38          Intercepts   N13  37.146  0.470  79.092   0.000 CONTROL
## 39          Intercepts   F01  66.024  0.546 120.957   0.000 CONTROL
## 40          Intercepts   F02  65.005  0.431 150.937   0.000 CONTROL
## 41          Intercepts   F03  49.068  0.503  97.580   0.000 CONTROL
## 42          Intercepts   F11  66.024  0.546 120.957   0.000 CONTROL
## 43          Intercepts   F13  49.068  0.503  97.580   0.000 CONTROL
## 44          Intercepts    N1   0.000  0.000 999.000 999.000 CONTROL
## 45          Intercepts    DN   4.763  0.241  19.746   0.000 CONTROL
## 46          Intercepts    F1   0.000  0.000 999.000 999.000 CONTROL
## 47          Intercepts    DF  -0.631  0.791  -0.797   0.425 CONTROL
## 48           Variances    N0 212.095  9.375  22.624   0.000 CONTROL
## 49           Variances    F0 303.840 15.548  19.542   0.000 CONTROL
## 50  Residual.Variances   N01  53.013  2.668  19.873   0.000 CONTROL
## 51  Residual.Variances   N02  48.563  2.931  16.569   0.000 CONTROL
## 52  Residual.Variances   N03 173.422  5.203  33.330   0.000 CONTROL
## 53  Residual.Variances   N11  53.013  2.668  19.873   0.000 CONTROL
## 54  Residual.Variances   N12  48.563  2.931  16.569   0.000 CONTROL
## 55  Residual.Variances   N13 173.422  5.203  33.330   0.000 CONTROL
## 56  Residual.Variances   F01 118.039  6.379  18.505   0.000 CONTROL
## 57  Residual.Variances   F02 120.255  5.454  22.050   0.000 CONTROL
## 58  Residual.Variances   F03 222.307  8.694  25.570   0.000 CONTROL
## 59  Residual.Variances   F11 118.039  6.379  18.505   0.000 CONTROL
## 60  Residual.Variances   F13 222.307  8.694  25.570   0.000 CONTROL
## 61  Residual.Variances    N1   0.000  0.000 999.000 999.000 CONTROL
## 62  Residual.Variances    DN  13.129  2.435   5.393   0.000 CONTROL
## 63  Residual.Variances    F1   0.000  0.000 999.000 999.000 CONTROL
## 64  Residual.Variances    DF   1.278  5.456   0.234   0.815 CONTROL
## 65               N0.BY   N01   1.000  0.000 999.000 999.000   TREAT
## 66               N0.BY   N02   1.183  0.015  80.777   0.000   TREAT
## 67               N0.BY   N03   0.862  0.020  43.892   0.000   TREAT
## 68               N1.BY   N11   1.000  0.000 999.000 999.000   TREAT
## 69               N1.BY   N12   1.183  0.015  80.777   0.000   TREAT
## 70               N1.BY   N13   0.862  0.020  43.892   0.000   TREAT
## 71               F0.BY   F01   1.000  0.000 999.000 999.000   TREAT
## 72               F0.BY   F02   0.675  0.022  30.281   0.000   TREAT
## 73               F0.BY   F03   0.780  0.025  31.552   0.000   TREAT
## 74               F1.BY   F11   1.000  0.000 999.000 999.000   TREAT
## 75               F1.BY   F13   0.780  0.025  31.552   0.000   TREAT
## 76               DN.BY    N1   1.000  0.000 999.000 999.000   TREAT
## 77               DF.BY    F1   1.000  0.000 999.000 999.000   TREAT
## 78               N1.ON    N0   1.000  0.000 999.000 999.000   TREAT
## 79               DN.ON    N0   0.010  0.035   0.284   0.776   TREAT
## 80               DN.ON    F0   0.057  0.030   1.884   0.060   TREAT
## 81               F1.ON    F0   1.000  0.000 999.000 999.000   TREAT
## 82               DF.ON    F0  -0.065  0.044  -1.477   0.140   TREAT
## 83               DF.ON    N0   0.037  0.050   0.740   0.459   TREAT
## 84               DF.ON    DN   0.373  0.146   2.554   0.011   TREAT
## 85             F0.WITH    N0 214.539  8.854  24.230   0.000   TREAT
## 86             F0.WITH    N1   0.000  0.000 999.000 999.000   TREAT
## 87             F0.WITH    DN   0.000  0.000 999.000 999.000   TREAT
## 88             N0.WITH    F1   0.000  0.000 999.000 999.000   TREAT
## 89             N0.WITH    DF   0.000  0.000 999.000 999.000   TREAT
## 90            N01.WITH   N11  10.372  2.503   4.144   0.000   TREAT
## 91            N02.WITH   N12  -1.693  2.831  -0.598   0.550   TREAT
## 92            N03.WITH   N13  58.425  5.467  10.687   0.000   TREAT
## 93            F01.WITH   F11  62.383  6.223  10.024   0.000   TREAT
## 94            F03.WITH   F13  76.966  8.884   8.663   0.000   TREAT
## 95               Means    N0   0.000  0.000 999.000 999.000   TREAT
## 96               Means    F0   0.000  0.000 999.000 999.000   TREAT
## 97          Intercepts   N01  31.173  0.425  73.308   0.000   TREAT
## 98          Intercepts   N02  32.833  0.487  67.402   0.000   TREAT
## 99          Intercepts   N03  37.146  0.470  79.092   0.000   TREAT
## 100         Intercepts   N11  31.173  0.425  73.308   0.000   TREAT
## 101         Intercepts   N12  32.833  0.487  67.402   0.000   TREAT
## 102         Intercepts   N13  37.146  0.470  79.092   0.000   TREAT
## 103         Intercepts   F01  66.024  0.546 120.957   0.000   TREAT
## 104         Intercepts   F02  65.005  0.431 150.937   0.000   TREAT
## 105         Intercepts   F03  49.068  0.503  97.580   0.000   TREAT
## 106         Intercepts   F11  66.024  0.546 120.957   0.000   TREAT
## 107         Intercepts   F13  49.068  0.503  97.580   0.000   TREAT
## 108         Intercepts    N1   0.000  0.000 999.000 999.000   TREAT
## 109         Intercepts    DN  12.584  0.326  38.549   0.000   TREAT
## 110         Intercepts    F1   0.000  0.000 999.000 999.000   TREAT
## 111         Intercepts    DF  -3.214  1.866  -1.722   0.085   TREAT
## 112          Variances    N0 212.095  9.375  22.624   0.000   TREAT
## 113          Variances    F0 303.840 15.548  19.542   0.000   TREAT
## 114 Residual.Variances   N01  53.013  2.668  19.873   0.000   TREAT
## 115 Residual.Variances   N02  48.563  2.931  16.569   0.000   TREAT
## 116 Residual.Variances   N03 173.422  5.203  33.330   0.000   TREAT
## 117 Residual.Variances   N11  53.013  2.668  19.873   0.000   TREAT
## 118 Residual.Variances   N12  48.563  2.931  16.569   0.000   TREAT
## 119 Residual.Variances   N13 173.422  5.203  33.330   0.000   TREAT
## 120 Residual.Variances   F01 118.039  6.379  18.505   0.000   TREAT
## 121 Residual.Variances   F02 120.255  5.454  22.050   0.000   TREAT
## 122 Residual.Variances   F03 222.307  8.694  25.570   0.000   TREAT
## 123 Residual.Variances   F11 118.039  6.379  18.505   0.000   TREAT
## 124 Residual.Variances   F13 222.307  8.694  25.570   0.000   TREAT
## 125 Residual.Variances    N1   0.000  0.000 999.000 999.000   TREAT
## 126 Residual.Variances    DN  13.129  2.435   5.393   0.000   TREAT
## 127 Residual.Variances    F1   0.000  0.000 999.000 999.000   TREAT
## 128 Residual.Variances    DF   1.278  5.456   0.234   0.815   TREAT
MplusAutomation::readModels("ex0308c.out")[["tech1"]]
## Reading model:  ex0308c.out
## $parameterSpecification
## $CONTROL
## $nu
##   N01 N02 N03 N11 N12 N13 F01 F02 F03 F11 F13
## 1   1   2   3   1   2   3   4   5   6   4   6
## 
## $lambda
##     N0 N1 DN F0 F1 DF
## N01  0  0  0  0  0  0
## N02  7  0  0  0  0  0
## N03  8  0  0  0  0  0
## N11  0  0  0  0  0  0
## N12  0  7  0  0  0  0
## N13  0  8  0  0  0  0
## F01  0  0  0  0  0  0
## F02  0  0  0  9  0  0
## F03  0  0  0 10  0  0
## F11  0  0  0  0  0  0
## F13  0  0  0  0 10  0
## 
## $theta
##     N01 N02 N03 N11 N12 N13 F01 F02 F03 F11 F13
## N01  11  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
## N02   0  12  NA  NA  NA  NA  NA  NA  NA  NA  NA
## N03   0   0  13  NA  NA  NA  NA  NA  NA  NA  NA
## N11  14   0   0  11  NA  NA  NA  NA  NA  NA  NA
## N12   0  15   0   0  12  NA  NA  NA  NA  NA  NA
## N13   0   0  16   0   0  13  NA  NA  NA  NA  NA
## F01   0   0   0   0   0   0  17  NA  NA  NA  NA
## F02   0   0   0   0   0   0   0  18  NA  NA  NA
## F03   0   0   0   0   0   0   0   0  19  NA  NA
## F11   0   0   0   0   0   0  20   0   0  17  NA
## F13   0   0   0   0   0   0   0   0  21   0  19
## 
## $alpha
##   N0 N1 DN F0 F1 DF
## 1  0  0 22  0  0 23
## 
## $beta
##    N0 N1 DN F0 F1 DF
## N0  0  0  0  0  0  0
## N1  0  0  0  0  0  0
## DN 24  0  0 25  0  0
## F0  0  0  0  0  0  0
## F1  0  0  0  0  0  0
## DF 26  0 27 28  0  0
## 
## $psi
##    N0 N1 DN F0 F1 DF
## N0 29 NA NA NA NA NA
## N1  0  0 NA NA NA NA
## DN  0  0 30 NA NA NA
## F0 31  0  0 32 NA NA
## F1  0  0  0  0  0 NA
## DF  0  0  0  0  0 33
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## $TREAT
## $nu
##   N01 N02 N03 N11 N12 N13 F01 F02 F03 F11 F13
## 1   1   2   3   1   2   3   4   5   6   4   6
## 
## $lambda
##     N0 N1 DN F0 F1 DF
## N01  0  0  0  0  0  0
## N02  7  0  0  0  0  0
## N03  8  0  0  0  0  0
## N11  0  0  0  0  0  0
## N12  0  7  0  0  0  0
## N13  0  8  0  0  0  0
## F01  0  0  0  0  0  0
## F02  0  0  0  9  0  0
## F03  0  0  0 10  0  0
## F11  0  0  0  0  0  0
## F13  0  0  0  0 10  0
## 
## $theta
##     N01 N02 N03 N11 N12 N13 F01 F02 F03 F11 F13
## N01  11  NA  NA  NA  NA  NA  NA  NA  NA  NA  NA
## N02   0  12  NA  NA  NA  NA  NA  NA  NA  NA  NA
## N03   0   0  13  NA  NA  NA  NA  NA  NA  NA  NA
## N11  14   0   0  11  NA  NA  NA  NA  NA  NA  NA
## N12   0  15   0   0  12  NA  NA  NA  NA  NA  NA
## N13   0   0  16   0   0  13  NA  NA  NA  NA  NA
## F01   0   0   0   0   0   0  17  NA  NA  NA  NA
## F02   0   0   0   0   0   0   0  18  NA  NA  NA
## F03   0   0   0   0   0   0   0   0  19  NA  NA
## F11   0   0   0   0   0   0  20   0   0  17  NA
## F13   0   0   0   0   0   0   0   0  21   0  19
## 
## $alpha
##   N0 N1 DN F0 F1 DF
## 1  0  0 34  0  0 35
## 
## $beta
##    N0 N1 DN F0 F1 DF
## N0  0  0  0  0  0  0
## N1  0  0  0  0  0  0
## DN 24  0  0 25  0  0
## F0  0  0  0  0  0  0
## F1  0  0  0  0  0  0
## DF 26  0 27 28  0  0
## 
## $psi
##    N0 N1 DN F0 F1 DF
## N0 29 NA NA NA NA NA
## N1  0  0 NA NA NA NA
## DN  0  0 30 NA NA NA
## F0 31  0  0 32 NA NA
## F1  0  0  0  0  0 NA
## DF  0  0  0  0  0 33
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## 
## attr(,"class")
## [1] "mplus.parameterSpecification" "list"                        
## attr(,"group.names")
## [1] "CONTROL" "TREAT"  
## 
## $startingValues
## $CONTROL
## $nu
##      N01    N02    N03    N11    N12    N13    F01    F02    F03    F11    F13
## 1 31.173 32.834 37.146 31.173 32.824 37.146 66.024 65.005 49.068 66.024 49.068
## 
## $lambda
##        N0    N1 DN    F0   F1 DF
## N01 1.000 0.000  0 0.000 0.00  0
## N02 1.183 0.000  0 0.000 0.00  0
## N03 0.862 0.000  0 0.000 0.00  0
## N11 0.000 1.000  0 0.000 0.00  0
## N12 0.000 1.183  0 0.000 0.00  0
## N13 0.000 0.862  0 0.000 0.00  0
## F01 0.000 0.000  0 1.000 0.00  0
## F02 0.000 0.000  0 0.675 0.00  0
## F03 0.000 0.000  0 0.780 0.00  0
## F11 0.000 0.000  0 0.000 1.00  0
## F13 0.000 0.000  0 0.000 0.78  0
## 
## $theta
##        N01    N02     N03    N11    N12    N13     F01     F02     F03     F11
## N01 53.015     NA      NA     NA     NA     NA      NA      NA      NA      NA
## N02  0.000 48.564      NA     NA     NA     NA      NA      NA      NA      NA
## N03  0.000  0.000 173.420     NA     NA     NA      NA      NA      NA      NA
## N11 10.370  0.000   0.000 53.015     NA     NA      NA      NA      NA      NA
## N12  0.000 -1.694   0.000  0.000 48.564     NA      NA      NA      NA      NA
## N13  0.000  0.000  58.421  0.000  0.000 173.42      NA      NA      NA      NA
## F01  0.000  0.000   0.000  0.000  0.000   0.00 118.041      NA      NA      NA
## F02  0.000  0.000   0.000  0.000  0.000   0.00   0.000 120.255      NA      NA
## F03  0.000  0.000   0.000  0.000  0.000   0.00   0.000   0.000 222.307      NA
## F11  0.000  0.000   0.000  0.000  0.000   0.00  62.385   0.000   0.000 118.041
## F13  0.000  0.000   0.000  0.000  0.000   0.00   0.000   0.000  76.967   0.000
##         F13
## N01      NA
## N02      NA
## N03      NA
## N11      NA
## N12      NA
## N13      NA
## F01      NA
## F02      NA
## F03      NA
## F11      NA
## F13 222.307
## 
## $alpha
##   N0 N1 DN F0 F1 DF
## 1  0  0  0  0  0  0
## 
## $beta
##       N0 N1 DN     F0 F1 DF
## N0 0.000  0  0  0.000  0  0
## N1 1.000  0  1  0.000  0  0
## DN 0.057  0  0  0.000  0  0
## F0 0.000  0  0  0.000  0  0
## F1 0.000  0  0  1.000  0  1
## DF 0.000  0  0 -0.065  0  0
## 
## $psi
##         N0 N1     DN      F0 F1    DF
## N0 212.093 NA     NA      NA NA    NA
## N1   0.000  0     NA      NA NA    NA
## DN   0.000  0 13.124      NA NA    NA
## F0 214.538  0  0.000 303.838 NA    NA
## F1   0.000  0  0.000   0.000  0    NA
## DF   0.000  0  0.000   0.000  0 1.278
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## $TREAT
## $nu
##      N01    N02    N03    N11    N12    N13    F01    F02    F03    F11    F13
## 1 31.173 32.834 37.146 31.173 32.824 37.146 66.024 65.005 49.068 66.024 49.068
## 
## $lambda
##        N0    N1 DN    F0   F1 DF
## N01 1.000 0.000  0 0.000 0.00  0
## N02 1.183 0.000  0 0.000 0.00  0
## N03 0.862 0.000  0 0.000 0.00  0
## N11 0.000 1.000  0 0.000 0.00  0
## N12 0.000 1.183  0 0.000 0.00  0
## N13 0.000 0.862  0 0.000 0.00  0
## F01 0.000 0.000  0 1.000 0.00  0
## F02 0.000 0.000  0 0.675 0.00  0
## F03 0.000 0.000  0 0.780 0.00  0
## F11 0.000 0.000  0 0.000 1.00  0
## F13 0.000 0.000  0 0.000 0.78  0
## 
## $theta
##        N01    N02     N03    N11    N12    N13     F01     F02     F03     F11
## N01 53.015     NA      NA     NA     NA     NA      NA      NA      NA      NA
## N02  0.000 48.564      NA     NA     NA     NA      NA      NA      NA      NA
## N03  0.000  0.000 173.420     NA     NA     NA      NA      NA      NA      NA
## N11 10.370  0.000   0.000 53.015     NA     NA      NA      NA      NA      NA
## N12  0.000 -1.694   0.000  0.000 48.564     NA      NA      NA      NA      NA
## N13  0.000  0.000  58.421  0.000  0.000 173.42      NA      NA      NA      NA
## F01  0.000  0.000   0.000  0.000  0.000   0.00 118.041      NA      NA      NA
## F02  0.000  0.000   0.000  0.000  0.000   0.00   0.000 120.255      NA      NA
## F03  0.000  0.000   0.000  0.000  0.000   0.00   0.000   0.000 222.307      NA
## F11  0.000  0.000   0.000  0.000  0.000   0.00  62.385   0.000   0.000 118.041
## F13  0.000  0.000   0.000  0.000  0.000   0.00   0.000   0.000  76.967   0.000
##         F13
## N01      NA
## N02      NA
## N03      NA
## N11      NA
## N12      NA
## N13      NA
## F01      NA
## F02      NA
## F03      NA
## F11      NA
## F13 222.307
## 
## $alpha
##   N0 N1 DN F0 F1 DF
## 1  0  0  0  0  0  0
## 
## $beta
##       N0 N1 DN     F0 F1 DF
## N0 0.000  0  0  0.000  0  0
## N1 1.000  0  1  0.000  0  0
## DN 0.057  0  0  0.000  0  0
## F0 0.000  0  0  0.000  0  0
## F1 0.000  0  0  1.000  0  1
## DF 0.000  0  0 -0.065  0  0
## 
## $psi
##         N0 N1     DN      F0 F1    DF
## N0 212.093 NA     NA      NA NA    NA
## N1   0.000  0     NA      NA NA    NA
## DN   0.000  0 13.124      NA NA    NA
## F0 214.538  0  0.000 303.838 NA    NA
## F1   0.000  0  0.000   0.000  0    NA
## DF   0.000  0  0.000   0.000  0 1.278
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## 
## attr(,"class")
## [1] "mplus.startingValues" "list"                
## attr(,"group.names")
## [1] "CONTROL" "TREAT"  
## 
## attr(,"class")
## [1] "mplus.tech1" "list"