Changes in version 1.5.5 o Use roxygen2 for documentation. Changes in version 1.5.4 o Extend the RE.type argument in osmasem() to include "CSymm" and "HCSymm" options. Changes in version 1.5.3 o Update sem() and osmasem2(). o Add error and warning messages in mxsem and osmasem2 objects. Changes in version 1.5.0 (2024-09-26) o Add dataset Chan17. o Add lbound and ubound in sem() and as.mxAlgebra(). o Add a field of citations in the Jaramillo05 dataset. o Rename create.mxModel() to sem(). o Add osmasem2() and friends. o Add mean data in issp05. o Support means in Cor2DataFrame(). o Fix the means of the latent variables at 0 in lavaan2RAM(). o Add "<~" operator in lavaan2RAM(). o Fix startvalues not assigned in create.mxModel(). Changes in version 1.4.0 (2024-05-16) o Release to CRAN. o Revise create.mxModel(). o Replace dontrun with donttest. Changes in version 1.3.1 (2023-08-09) o Release to CRAN. o Lower the tolerance in testing asyCov(), which returns an error in latest R. Changes in version 1.3.0 (2023-01-07) o Fix a bug reported by Noel Card that meta() reported incorrect number of statistics and dfs. o Rewrite asyCov() and rename the old one to asyCovOld(). o Add rCor3L() and its summary method. o Add subset.variables argument in tssem2() and wls(). o Rename meta3() to meta3L() and meta3X() and meta3LFIML(). o Fix a critical bug in create.Tau2() that uses variances as SDs. o Add a new argument 'level' in create.Tau2(). o Add a mxModel.Args in wls(). o Add A.lbound and A.ubound arguments in create.vechsR() and osmasem(). o Add data and group arguments in calEffSizes(). o Modify Nohe15A1 and Nohe15A2. o Add a RAM argument in impliedR() and rimpliedR() and an SmatrixSD argument in rimpliedR(). o Add a starting value argument in as.mxAlgebra(). o Teach lavaan2RAM() to recognize functions of parameters and constraints in lavaan and convert them to mxAlgebra and mxConstraint in OpenMx. o Experimental: teach create.mxModel() to recognize mxAlgrebra and mxConstraint converted from lavaan2RAM(). Changes in version 1.2.5.1 (2021-05-17) o Release to CRAN. o Fix a bug in an example in wls.Rd that triggers warning in R-Devel. o Add Id, expCov, and expMean in create.mxModel(). Changes in version 1.2.5 (2020-11-29) o Release to CRAN. o Fix a bug in create.vechsR() with S0 argument to ensure that diagonals are 0. o Fix a bug in create.Tau2() with the RE.type = "User" argument that incorrectly fixes all fixed parameters at 0. o Add subset.rows argument in osmasem(). o Rename subset argument in osmasem() to subset.variables. o Add an argument extraTries in rerun(). o Add dataset Mathieu15. o Add calEffSizes(). o Add create.modMatrix(). o Rewrite Cor2DataFrame() to automatically append additional variables. Changes in version 1.2.4 (2020-06-14) o Release to CRAN. o Add CFI and TLI in summary.osmasem(). o Rename the "Saturated" argument to "fitIndices" in summary.osmasem(). o Add "@" in the syntax of as.mxMatrix(). o Add as.mxAlgebra(). o Add as.symMatrix(). o Add an argument Jmatrix in osmasem(). o Add an argument ngroups in lavaan2RAM(). o Change the variable names in Becker92 and Becker94 so that they work better with lavaan2RAM(). Changes in version 1.2.3.1 (2019-12-08) o Release to CRAN. o Change class(x) == "foo" to inherits(x, "foo") to avoid errors in R 4.0.0. Changes in version 1.2.3 (2019-10-10) o Release to CRAN. o Fix a minor bug in lavaan2RAM() that arranges variables according to x1, x10, x2, ... o Improve tssem1FEM() in handling missing variables. o Replace bootstrap vcov() with OpenMx's vcov() when there are constraints in wls(). o Add a subset argument in osmasem(). o Add a plotting method for osmasem object. o Add metaFIML(). o Add an argument autofixtau2 for tssem1REM and osmasem objects in rerun(). o Add an argument RAM=NULL in wls(), tssem2(), and uniR2mx(). o Add dataset Kalaian96. o Add robust argument in vcov.meta(), vcov.meta3X(), vcov.osmasem(), vcov.tssem1REM(), summary.meta(), summary.meta3X(), summary.osmasem(), and summary.tssem1REM(). Changes in version 1.2.2 (2019-05-29) o Release to CRAN. o Add dataset Stadler15. o Add create.mxModel() Changes in version 1.2.0 (2018-10-18) o Release to CRAN. o Add .onLoad() o Add osmasem() and its related functions. o Add an argument type=c("tssem", "osmasem") in pattern.na(). o Add datasets Gnambs18 and vanderPol17. Changes in version 1.1.0 (2018-05-09) o Release to CRAN. o Add checkRAM(). o Add list.output argument in smdMTS() and smdMES(). o Add dataset Gleser94. o Add dataset Scalco17. o Modify plotting methods for lavaan models and wls objects. o Fix a bug in list2matrix() for 2x2 matrices when the diag=FALSE. o Fix a minor bug in asyCov() with acov="weighted" or "unweighted" when the cor.analysis=TRUE with covariance matrices as the input. Changes in version 1.0.0 (2018-01-13) o Release to CRAN. o Add lavaan in import. o Change the defaults of tssem1(): From method="FEM" to method="REM", From RE.type="Symm" to RE.type="Diag", and From acov="individual" to acov="weighted." o Add tssemParaVar() to estimate heterogeneity of parameter estimates in tssem approach. o Add basic tests. o Add fixed.x=FALSE automatically in uniR2lavaan(). o Fix coef.wls() so that it always follows the order of the parameter estimates in vcov.wls() o Rename bootMASEM functions to bootuniR functions. o Change the variable names in the output of asyCov(). Changes in version 0.9.16 (2017-09-29) o Release to CRAN. o Add bootMASEM functions. o Rename the argument my.df to Cov in the tssem1 family. o Rename the argument my.df to Cor in uniR1(). o Rename the argument asyCov to aCov in the wls() and tssem2(). o Rename the argument check.asyCov to check.aCov in is.pd(). o Revise meta2semPlot() so that it generates nicer variable labels. o Change the variable names in Becker94 so that they work better with lavaan2RAM(). o Revise lavaan2RAM() to work with mean structure. o Revise as.mxMatrix() to work with definition variables. Changes in version 0.9.14 (2017-05-18) o Release to CRAN. o Fix a minor bug reported by GerardCY in meta() when lm() fails to get the starting values for coef.constraints. o Add rCor(), rCorPop(), rCorSam(), summary.CorPop(), and print.summary.CorPop. o Fix a minor bug reported by John Ma when there are more than 120 variables in tssem1FEM(). o Revise the formula in calculating the standard error in uniR1() by using the second improved approximation of Schmidt and Hunter (2015, p. 101) o Add smdMTS() and smdMES() to calculate standardized mean differences for multiple treatment studies and for multiple end-point studies. Changes in version 0.9.12 (2017-01-23) o Release to CRAN. o Explicitly state "SLSQP" as the optimizer in metaSEM as "CSOLNP" is the default optimizer in OpenMx 2.7.4. o Revise and rename impliedSigma() to impliedR(). o Fix a bug in uniR2mx() that does not work for models with latent variables. o Add dataset Cooke16. o Change solve() to chol2inv(chol()) and ginv() for matrix inversion. o Add dataset Boer16. o Add uniR1(), uniR2mx(), and uniR2lavaan(). o Modify a variable name in Becker09. o Minor changes on how errors are handled in the main functions. o Add datasets Nohe15A1 and Nohe15A2 o Modify some variable names in Hunter83 Changes in version 0.9.10 (2016-08-18) o Release to CRAN. o Add impliedSigma() to calculate the model implied correlation or covariance matrix based on the RAM model o Add VarCorr() to extract variance component matrix for the class meta objects. o Fix a minor bug in summary.tssem1FEM that throws an error when tT is NA. o Add a check on the lengths of df and n in tssem1FEM() and tssem1REM(). o Change mxFitFunctionAlgebra() to mxFitFunctionMultigroup() in tssem1FEM(). o Fix a minor bug in lavaan2RAM() that does not honor the std.lv argument. o Modify the vignette and added examples. o Change the definition of is.pd() from Matrix::nearPD to MASS::mvrnorm(). Changes in version 0.9.8 (2016-04-19) o Release to CRAN o Return NA rather than error in calculating 95% CI of RMSEA when there are errors in summary.wls(). o Fix a minor bug in meta() that does not give a starting value on the last preditcor with intercept.constraints=0 o Add lavaan2RAM() to convert lavaan models to RAM models o Add RMSEA 95% CI for wls and tssem1FEM classes Changes in version 0.9.6 (2015-10-31) o Release to CRAN o Add several packages in NAMESPACE to satisfy R developmental version's (3.3.0) requirements o Add ellipse package in imports o Fix a bug reported by S.-F. Cheung in rerun() for tssem1FEM objects o Add acov argument in asyCov() and tssem1() o Modify wls(diag.constraints=FALSE) so that "mediators" are properly handled o Add datasets Norton13 and Roorda11 o Change default model.name in tssem1REM(), tssem1FEM() and wls() to avoid potential error code with OpenMx 2.2.6 o Add RE.constraints argument and "User" option in RE.type argument in tssem1() and tssem1REM() Changes in version 0.9.4 (2015-06-08) o Modify to fit the CRAN policies o Remove deltaMethod() o Revert the RE.lbound from NA to 1e10 in meta() and meta3() o Change the default "Optimality tolerance" to "6.3e-14" in OpenMx o Change the default "Gradient iterations" to "2" in OpenMx o Change the default arguments in rerun() Changes in version 0.9.3-2 o Change the RE.lbound from 1e10 to NA in meta() and meta3() o Add trunction (0 and 1) in calculating R2 in summary.meta() o Change the default optimizer from "NPSOL" to "SLSQP" (default in OpenMx) o Change the default "Gradient algorithm" to "central" in OpenMx o Add metaSEM.Rnw in vignettes Changes in version 0.9.3-1 o Correct a typo in the example of Aloe14 (reported by Fred Li) o Modify to fit R-3.2.0 Changes in version 0.9-2 o Add dataset Cheung00 o Add check.asyCov and cor.analysis arguments in is.pd() Changes in version 0.9-1 o Add citation in "Frontiers in Psychology" o Release after the official release of OpenMx 2.0 o Remove dataset Craft03 which is duplicated of Becker09 Changes in version 0.9-0 o Add semPlot package in Suggests and meta2semPlot() to convert wls objects to semPlotModel objects o Fix a bug in tssem1REM() that may throw away correlation coefficients when there are missing correlations (not missing variables) o Add byrow argument in vec2symMat() o Add datasets Aloe14 and Becker09 o Remove ellipse package in the dependence o Add silent=TRUE and run=TRUE arguments in most functions o Fix the package to work in OpenMx 2.0 o Use labels rather than Amatrix and Smatrix in wls() and tssem2() o Fix a bug in create.mxMatrix() to respect byrow=TRUE for "Symm" and "Stand" types Changes in version 0.8-5 o Change "." to "_" in datasets Jaramillo05 and wvs94a, and indirectEffect.R o Add pattern.n() to display the accumulative sample sizes of the matrices o Add a function deltaMethod() to calculate approximate sampling variance or covariance matrix o Add methods for coef.MxRAMModel and vcov.MxRAMModel o Modify the formula to calculate SRMR in summary.tssem1FEM() o Add xlim and ylim arguments in plot.meta() o Add datasets wvs94b and BCG o Rename the dataset wvs94 to wvs94a o Revise is.pd() so that it returns NA rather than throws an error when there are NA in the input matrices o Add byrow argument in create.mxMatrix() o Add pattern.na() to display the pattern of missing data in TSSEM o Fix a bug in asyCov() returning an error in diffferent dimensions when the input is a list of 2x2 matrices o Fix a bug reported by Andre Plamondon that tssem1FEM() returns an error when acovS is a scalar Changes in version 0.8-4 o Fix an issue in diag() that breaks the metaSEM in R-3.0.0 o Add Diag() that preserves the same functions as diag() prior to R-3.0.0 o Add dataset Craft03 Changes in version 0.8-2 o Finalize features for release Changes in version 0.8-1 o Add automatic constraint on the diagonals when diag.constraints=FALSE argument in wls() for cor.analysis=TRUE. It is usually not necessary to set diag.constraints=TRUE unless there are mediators. o Add meta3X() to handle missing covariates with FIML for 3-level meta-analysis o Fix the issue that there are missing levels in "cluster" in meta3() (and reml3()) reported by David Stanley o Modify meta(), reml(), meta3() and reml3() functions so that intercept.constraints, coef.constraints, RE.constraints, RE2.constraints and RE3.constraints may accept a scalar or vector as inputs o Add mx.algebras argument in wls() and tssem2() o Add datasets Hunter83 and Jaramillo05 o Change the default in as.mxMatrix. If 'x' is not a matrix, as.matrix(x) is applied on 'x' instead of throwing an error. Changes in version 0.8-0 o Finalize features for release Changes in version 0.7-1 o Remove argument RE_diag and added RE.type in tssem1() and tssem1REM() o Remove standard error, z value and p values from summary() when intervals.type="LB" o Add rerun() to refit models o Rename all mx fitted objects to mx.fit o Fix a bug in .minus2LL(), tssem1FEM() and summary.tssem1FEM in calculating the df of the independence model when cor.analysis=FALSE o Fix a bug in tssem1REM() that my.df is a list of covariance matrices when cor.analysis=TRUE o Fix a bug in calculating acov (solve()) in asyCov(), indirectEffect, tssem1.FE() o Add indirectEffect() to calculate the asymptotic covariance matrix of indirect and direct effects o Add create.Fmatrix() and create.mxMatrix() to create mxMatrix objects o Add df.adjustment argument in summary.wls() o Rewrite wls() using RAM specification (A, S and F matrices) o Add diag.constraints argument in wls() to constrain diagonals as 1 o Improve efficiency by removing the call on installed.packages() and summary() from OpenMx o Fix a bug in vec2symMat() reported by Yonghao Lim o Add meta3() and reml3() for 3-level meta-analysis o Add datasets Becker92, Becker94, Cooper03, Mak09, issp05 and Bornmann07 o Add I2 and R2 arguments to calculate heterogeneity and explained variance in meta() o Rewrite meta() so that the predictors are treated as design matrix rather than as variables o Revise meta() to replace NA with 1e5 in v object o Rename coeff.constraints argument to coef.constraints in meta() o Add homoStat argument in summary.meta() o Rename tssem1FE() and tssem1RE() to tssem1FEM() and tssem1REM() Changes in version 0.7-0 o Fix a bug in meta() that does not include RE.lbound in Tau matrix when RE.lbound is a matrix o Revise tssemFE() to handle incomplete data in the first group o Add tssem1RE() for random-effects TSSEM o Rename tssem1() to tssem1FE() for fixed-effects TSSEM o Modify tssem1() to be a wrapper for tssem1FE() and tssem1RE() o Modify tssem2() to fit both fixed- and random-effects structural models from tssem1() o Add "cluster" argument in tssem1.FE() and some methods for it o Add "select" argument in coef.meta() and vcov.meta() o Fix a bug by removing the characters in matrix column when OpenMx 1.1 is used o Fix a bug in asyCov() that uses only the first sample size Changes in version 0.6-0 o Add a dataset WVS94 o Change dropNA argument from TRUE to FALSE in asyCov() o Add data argument in meta() and reml() o Fix a bug by addinng dimnames in M matrix in meta() when OpenMx 1.1 is used o Fix a bug in summary.meta(), summary.reml() and summary.wls() when OpenMx 1.1 is used o Add plot() method for multivariate meta-analysis o Add the ellipse package on "Imports" in the DESCRIPTION o Add the metafor package on "Suggests" in the DESCRIPTION Changes in version 0.5-4 o Fix a bug in tssem1() when OpenMx 1.0.6 is used o Fix a bug in tssem1() which ignores start.values argument Changes in version 0.5-3 o Add model.name argument in tssem1(), tssem2(), wls(), meta() and reml() o Add anova() method for wls, meta and reml objects o Add no. of studies and no. of observed statistics in reml object (Ad-hoc) o Use Tau2 to represent variance component in both meta() and reml() o Fix a bug in meta() that exists when no. of predictors is larger than 1 Changes in version 0.5-2 o Add name argument in as.mxMatrix() o Add reml() to estimate variance components with REML Changes in version 0.5-1 o Add bdiagMat() and bdiagRep() functions to create block diagonal matrix o Fix a bug in meta() that ignored RE.lbound when RE.constraints was used o Fix a bug in readFullMat() that converts data into data.frames rather than matrices Changes in version 0.5-0 o Add vcov() methods for tssem1, wls objects o Add coef() methods for tssem1, wls and meta objects Changes in version 0.3-9 o Add a vignette Changes in version 0.3-8 o Add suppressWarnings = TRUE in meta(), tssem1(), tssem2(), and wls() o Add OpenMx.status[[1]] into summary method Changes in version 0.3-7 o Add vec2symMat(), matrix2bdiag() and homoStat() functions o Move startValues(), minus2LL() and indepwlsChisq() to hidden functions o Update datasets on Cheung09 and Digman97 Changes in version 0.3-6 o Rename the package to "Meta-Analysis using Structural Equation Modeling" o Add vcov() method for meta object Changes in version 0.3-5 o Fix a few bugs Changes in version 0.3-4 o Add summary.meta() for meta objects Changes in version 0.3-3 o Add new arguments in asyCov() o Add meta() for univariate and multivariate meta-analysis o Add as.mxMatrix() to convert matrices to mxMatrices Changes in version 0.3-2 o Add indepWLSChisq() to calculate the chi-square statistic for an independent model based on WLS o Add minus2LL() to calculate the chi-square statistic for independent and saturated models based on ML o Add summary.wls() and print.summary.wls() for wls objects o Add summary.tssem1() and print.summary.tssem1() for tssem1 objects Changes in version 0.3-1 o First alpha release to R-forge o Add basic functions for TSSEM