Integrated Toolkit for Psychological Analysis and Modeling in R

CRAN version R-CMD-check Codecov test coverage download


CRAN Stable Version


Dev Version (newest feature)


Key Features

A beginner-friendly R package for statistical analysis in social science (intermediate & advanced R users should also find it useful)
Tired of manually writing all variables in a model? You can use dplyr::select() syntax for all models
Fitting models, plotting, checking goodness of fit, and model assumption violations all in one place.
Beautiful and easy-to-read output. Check out this example now.
In the backend, this package uses reliable R packages (e.g., lavaan, lme4, psych) to handle all statistical analysis.

Supported Models

Regression models:
* Linear regression (i.e., support ANOVA, ANCOVA) & generalized linear regression
* Linear mixed effect model (i.e., HLM, MLM) & generalized linear mixed effect model.

Structure Equation Modeling:
* Exploratory & confirmatory factor analysis
* Measurement invariance (MGCFA approach)
* Mediation analysis (SEM approach)

* Descriptive statistics * Correlation (e.g., pearson, polychoric, tetrachoric, spearman), * Reliability analysis

Note: If you like this package, please considering give it a star on GitHub. I would really appreciate that.


Authors: Jason Moy

Citation: Moy, J. H. (2021). psycModel: Integrated Toolkit for Psychological Analysis and Modeling in R. CRAN.

Logo Design: Danlin Liu

Upcoming Features

  1. Support bootstrapping and robust standard error for relevant models
  2. Support moderated mediation analysis and multilevel mediation analysis (currently support multilevel with level-1 variable only)
  3. Support latent class and profile analysis (possible latent transition analysis)
  4. Support generalized linear regression
  5. Support polynomial regression
  6. Support outputting table to MS word (don’t know how to implement yet)

Note: A more exhaustive list is available here. If you have any feature request, please feel free to let me know by writing a new GitHub issue.


The current release is the alpha version of the package since I plan to add more features and support more models in the future (read more about planned updates here). If you are interested in help building this package, please feel free to submit a pull request / GitHub issue. Although I tried my best to fix any bugs, the package is not guarantee to be bug-free. If you find any bugs, please submit them in the GitHub issue. Although the package is depended on reliable R packages for all statistical analysis, I still encourage validating the output of this package with another statistical software (e.g., SPSS, MPlus, Python). This package is licensed under the GPLv3 liscense. You may use, re-distribute, and modified the package. Additionally, this package does provide any kind of warranty, either expressed or implied based on the GPLv3 liscense. Finally, you should expect many changes that are not backward compatible until the package’s first major release (i.e., v1.0.0).


This package was built by standing on the shoulders of giants with special thanks to researchers and developers of lavaan, lme4, lmerTest, nlme, performance, parameters, psych, and of course, all of the tidyverse packages. I hope this package can help someone in the same way that these packages has helped me.

Code of Conduct

Please note that the psycModel project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.