Easy estimation of Bayesian multilevel mediation models with Stan.
bmlm is an R package providing convenient methods for Bayesian estimation of multilevel mediation models using Stan.
The package’s source code is hosted on GitHub. More information can be found on the bmlm’s website.
Please ensure you have the latest version of R installed. Windows users may need to install RTools (more information on the RStan website), OS X users may need to install XCode (more information).
To install the latest stable version of bmlm from CRAN, run
install.packages("bmlm")
Sometimes the stable version on CRAN is not the latest version of bmlm. bmlm is developed on GitHub, and users may obtain the latest (development) version from GitHub directly.
The latest development version of bmlm requires devtools for installation. If you don’t have the devtools package installed in R, first run this line:
install.packages("devtools")
Then proceed to install bmlm from GitHub:
devtools::install_github("mvuorre/bmlm", args = "--preclean")
Please contact the author of the package for questions and suggestions. I recommend creating a new issue on GitHub.
If you use this software, please cite it:
citation("bmlm")#>#> To cite package bmlm in publications, please use:#>#> Vuorre, M., (2017). bmlm: Bayesian Multilevel Mediation. R#> package version 1.3.4. https://cran.r-project.org/package=bmlm#>#> A BibTeX entry for LaTeX users is#>#> @Manual{,#> title = {bmlm: Bayesian Multilevel Mediation},#> author = {Matti Vuorre},#> year = {2017},#> url = {https://cran.r-project.org/package=bmlm},#> }
Fix package for staged installation
tab2doc(), package no longer needs archived ReporteRs package.tab2doc() because required package ReporteRs is archived.mlm_spaghetti_plot() to allow jittering and adjusting size of the error bars.mlm_spaghetti_plot() now has argument mx which can be set to mx = "data" to plot the spaghetti plot of the M - Y relationship (b path) such that the X values are from data, and not fitted values from the X - M model (a path). The argument defaults to mx = "fitted", such that the X axis values of the M - Y spaghetti plot are fitted values.mlm_spaghetti_plot() for visualizing model-fitted values for paths a (X->M regression) and b (M->Y regression)mlm_summary() now gives only population level parameters by default, and group-level parameters when pars = "random"mlm_path_plot() now draws a template if no model is entered (i.e. template argument is deprecated)mlm_path_plot() now by default also shows SDs of group-level effects. This behavior can be turned off by specifying random = FALSEMEC2010mlm_summary()Removed sigma_y from being modeled when binary_y = TRUE.
Removed posterior probabilities from default outputs.
Added type = "violin" as option for plotting coefficients with mlm_pars_plot().
Users may now change each individual regression parameter's prior, instead of classes of priors.
Users may now change the shape parameter of the LKJ prior.
Coefficient plots now reorder parameter estimates, if user has requested varying effects.
Path plot now by default does not scale the edges.
bmlm now uses pre-compiled C++ code for the Stan models, which eliminates the need to compile a model each time mlm() is run. This significantly speeds up model estimation.
The Stan code used by mlm() is now built from separate chunks, allowing more flexible and robust model development.
Initial release to CRAN.