OpenMx
   HOME

TheInfoList



OR:

OpenMx is an
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
program for extended
structural equation modeling Structural equation modeling (SEM) is a diverse set of methods used by scientists for both observational and experimental research. SEM is used mostly in the social and behavioral science fields, but it is also used in epidemiology, business, ...
. It runs as a package under R. Cross platform, it runs under Linux, Mac OS and Windows.S. Boker, M. Neale, H. Maes, M. Wilde, M. Spiegel, T. Brick, J. Spies, R. Estabrook, S. Kenny, T. Bates, P. Mehta and J. Fox. (2011). OpenMx: An Open Source Extended Structural Equation Modeling Framework. ''Psychometrika'', 76

/ref>


Overview

OpenMx consists of an R library of functions and optimizers supporting the rapid and flexible implementation and estimation of Structural equation modeling, SEM models. Models can be estimated based on either raw data (with FIML modelling) or on correlation or covariance matrices. Models can handle mixtures of continuous and ordinal data. The current version is OpenMx 2, and is available on CRAN. Path analysis,
Confirmatory factor analysis In statistics, confirmatory factor analysis (CFA) is a special form of factor analysis, most commonly used in social science research.Kline, R. B. (2010). ''Principles and practice of structural equation modeling (3rd ed.).'' New York, New York: Gu ...
, Latent growth modeling, Mediation analysis are all implemented. Multiple group models are implemented readily. When a model is run, it returns a model, and models can be updated (adding and removing paths, adding constraints and equalities; giving parameters the same label equates them). An innovation is that labels can consist of address of other parameters, allowing easy implementation of constraints on parameters by address. RAM models return standardized and raw estimates, as well as a range of fit indices ( AIC, RMSEA, TLI, CFI etc.). Confidence intervals are estimated robustly. The program has parallel processing built-in via links to parallel environments in R, and in general takes advantage of the R programming environment. Users can expand the package with functions. These have been used, for instance, to implement Modification indices. Models can be written in either a "pathic" or "matrix" form. For those who think in terms of path models, paths are specified using mxPath() to describe paths. For models that are better suited to description in terms of matrix algebra, this is done using similar functional extensions in the R environment, for instance mxMatrix and mxAlgebra. The code below shows how to implement a simple
Confirmatory factor analysis In statistics, confirmatory factor analysis (CFA) is a special form of factor analysis, most commonly used in social science research.Kline, R. B. (2010). ''Principles and practice of structural equation modeling (3rd ed.).'' New York, New York: Gu ...
in OpenMx, using either path or matrix formats. The model is diagrammed here:


Example path model specification

Below is the code to implement, run, and print a summary for estimating a one-factor path model with five indicators. require(OpenMx) data(demoOneFactor) manifests <- names(demoOneFactor) latents <- c("G") m1 <- mxModel("One Factor", type="RAM", manifestVars = manifests, latentVars = latents, mxPath(from=latents, to=manifests), mxPath(from=manifests, arrows=2), mxPath(from=latents, arrows=2, free=FALSE, values=1.0), mxData(cov(demoOneFactor), type="cov", numObs=500) ) summary(mxRun(m1))


Example matrix specification

Below is the code to implement, run, and print a summary for estimating a one-factor path model with five indicators. library(OpenMx) data(demoOneFactor) df = cov(demoOneFactor) m1 <- mxModel("One Factor", mxMatrix("Full", nrow = 5, ncol = 1, values = 0.2, free = TRUE, name = "A"), mxMatrix("Symm", nrow = 1, ncol = 1, values = 1.0, free = FALSE, name = "L"), mxMatrix("Diag", nrow = 5, ncol = 5, values = 1.0, free = TRUE, name = "U"), mxAlgebra(A %*% L %*% t(A) + U, name="R"), mxExpectationNormal(covariance= "R", dimnames = names(demoOneFactor)), mxFitFunctionML(), mxData(df, type = "cov", numObs=500) ) summary(mxRun(m1))


References


External links


Home Page
{{DEFAULTSORT:Openmx Articles with example R code Free statistical software Structural equation models R (programming language)