create.vechsR: Create a model implied correlation matrix with implicit...

View source: R/osmasem.R

create.vechsRR Documentation

Create a model implied correlation matrix with implicit diagonal constraints

Description

It creates implicit diagonal constraints on the model implied correlation matrix by treating the error variances as functions of other parameters.

Usage

create.vechsR(A0, S0, F0 = NULL, Ax = NULL, Sx = NULL, A.lbound=NULL, A.ubound=NULL)

Arguments

A0

A Amatrix, which will be converted into MxMatrix-class via as.mxMatrix.

S0

A Smatrix, which will be converted into MxMatrix-class via as.mxMatrix.

F0

A Fmatrix, which will be converted into MxMatrix-class via as.mxMatrix.

Ax

A Amatrix of a list of Amatrix with definition variables as the moderators of the Amatrix.

Sx

A Smatrix of a list of Smatrix with definition variables as the moderators of the Smatrix.

A.lbound

A matrix of lower bound of the Amatrix. If a scalar is given, the lbound matrix will be filled with this scalar.

A.ubound

A matrix of upper bound of the Amatrix. If a scalar is given, the ubound matrix will be filled with this scalar.

Value

A list of MxMatrix-class. The model implied correlation matrix is computed in impliedR and vechsR.

Note

Since A0 are the intercepts and Ax are the regression coefficients. The parameters in Ax must be a subset of those in A0.

Author(s)

Mike W.-L. Cheung <mikewlcheung@nus.edu.sg>

See Also

osmasem, create.Tau2, create.V

Examples


## Proposed model
model1 <- 'W2 ~ w2w*W1 + s2w*S1
           S2 ~ w2s*W1 + s2s*S1
           W1 ~~ w1WITHs1*S1
           W2 ~~ w2WITHs2*S2
           W1 ~~ 1*W1
           S1 ~~ 1*S1
           W2 ~~ Errw2*W2
           S2 ~~ Errs2*S2'

## Convert into RAM    
RAM1 <- lavaan2RAM(model1, obs.variables=c("W1", "S1", "W2", "S2"))

## No moderator    
M0 <- create.vechsR(A0=RAM1$A, S0=RAM1$S, F0=NULL, Ax=NULL, Sx=NULL)

## Lag (definition variable) as a moderator on the paths in the Amatrix    
Ax <- matrix(c(0,0,0,0,
               0,0,0,0,
               "0*data.Lag","0*data.Lag",0,0,
               "0*data.Lag","0*data.Lag",0,0),
             nrow=4, ncol=4, byrow=TRUE)
                
M1 <- create.vechsR(A0=RAM1$A, S0=RAM1$S, F0=NULL, Ax=Ax, Sx=NULL)    

## Lag (definition variable) as a moderator on the correlation in the Smatrix
Sx <- matrix(c(0,"0*data.Lag",0,0,
               "0*data.Lag",0,0,0,
               0,0,0,"0*data.Lag",
               0,0,"0*data.Lag",0),
             nrow=4, ncol=4, byrow=TRUE)

M2 <- create.vechsR(A0=RAM1$A, S0=RAM1$S, F0=NULL, Ax=NULL, Sx=Sx)


metaSEM documentation built on Sept. 30, 2024, 9:21 a.m.