I try to estimate parameters in a meta-analytical path model, where A -> B -> C (full mediation) based on a list of correlation matrices in metaSem.
My A1 matrix is as follows:
A1 <- create.mxMatrix(c(0, 0, 0,
indep2med, 0, 0,
0, med2dep, 0),
type="Full", byrow=TRUE, ncol=3, nrow=3,
as.mxMatrix=TRUE)
dimnames(A1)[[1]] <- dimnames(A1)[[2]] <- variable.labels
My S1 matrix is as follows:
S1 <- create.mxMatrix(c("1", 0, 0,
0, ".1*e2", 0,
0, 0, ".1*e3"),
type="Full", byrow=TRUE, ncol=3, nrow=3,
as.mxMatrix=TRUE)
dimnames(S1)[[1]] <- dimnames(S1)[[2]] <- variable.labels
All is fine when I use the standard settings in estimating the pooled correlation matrix and estimating the model parameters using:
fit1 <- tssem1(data.list$data,data.list$n,method = "REM", RE.type = "Diag")
fit2 <- tssem2(fit1,Amatrix=A1,Smatrix=S1)
However, if I set diag.constraints="TRUE" in tssem2, that is
fit2 <- tssem2(fit1,Amatrix=A1,Smatrix=S1,diag.constraints="TRUE") as is recommended for mediation models, I get an error:
Error in diag.constraints & (sum(Constraints) > 0) : operations are possible only for numeric, logical or complex types
What do I do wrong? Moreover, why do I need to set diag.constraints="TRUE"?
Any help is appreciated.
PS. I firstly/also posted this question on stackoverflow: https://stackoverflow.com/questions/49387102/error-in-metasem-tssem2-ope... [6]