Repo Status Lifecycle Licence GitHub language count R-CMD-check

CRAN Downloads: Total Downloads: Monthly


semEff provides functionality to automatically calculate direct, indirect, and total effects for ‘piecewise’ structural equation models, comprising lists of fitted models representing structured equations (Shipley 2000, 2009; Lefcheck 2016). Confidence intervals are provided via bootstrapping.

Currently supported model classes are "lm", "glm", "lmerMod", "glmerMod", "lmerModLmerTest", "gls", and "betareg".


You can install the released version of semEff from CRAN with:


And the development version from GitHub with:

devtools::install_github("murphymv/[email protected]")


The primary function is semEff(), which returns an object of class "semEff" with associated print() and summary() methods. Everything can technically be accomplished in a single call to semEff(); however, since bootstrapping is employed to generate resamples for confidence intervals (via bootEff()), it is usually preferable to save these estimates separately prior to calling semEff() — allowing more flexibility and saving time if/when recalling the function.


Package functions are well-documented and most include some short examples. In addition, see the following vignettes for some longer demonstrations:


Lefcheck, J. S. (2016). piecewiseSEM: Piecewise structural equation modelling in R for ecology, evolution, and systematics. Methods in Ecology and Evolution, 7(5), 573–579.

Shipley, B. (2000). A New Inferential Test for Path Models Based on Directed Acyclic Graphs. Structural Equation Modeling: A Multidisciplinary Journal, 7(2), 206–218.

Shipley, B. (2009). Confirmatory path analysis in a generalized multilevel context. Ecology, 90(2), 363–368.