https://github.com/sfcheung/semfindr
A find(e)r of influential cases and outliers in SEM
https://github.com/sfcheung/semfindr
diagnostics influential-cases lavaan outlier-detection r r-package sensitivity-analysis structural-equation-modeling
Last synced: 2 months ago
JSON representation
A find(e)r of influential cases and outliers in SEM
- Host: GitHub
- URL: https://github.com/sfcheung/semfindr
- Owner: sfcheung
- License: gpl-3.0
- Created: 2020-06-12T02:44:37.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2025-03-23T09:41:18.000Z (3 months ago)
- Last Synced: 2025-03-30T01:51:47.755Z (3 months ago)
- Topics: diagnostics, influential-cases, lavaan, outlier-detection, r, r-package, sensitivity-analysis, structural-equation-modeling
- Language: R
- Homepage: https://sfcheung.github.io/semfindr/
- Size: 146 MB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: NEWS.md
- License: LICENSE.md
Awesome Lists containing this project
README
[](https://lifecycle.r-lib.org/articles/stages.html#stable)
[](https://www.repostatus.org/#active)
[](https://CRAN.R-project.org/package=semfindr)
[](https://cran.r-project.org/package=semfindr)
[](https://r-pkg.org/pkg/semfindr)
[](https://github.com/sfcheung/semfindr)
[](https://github.com/sfcheung/semfindr/commits/master)
[](https://github.com/sfcheung/semfindr/actions/workflows/R-CMD-check.yaml)(Version 0.1.9, updated on 2025-03-04, [release history](https://sfcheung.github.io/semfindr/news/index.html))
# semfindr: Finding influential cases in SEM
A find(e)r of influential cases in structural equation modeling
based mainly on the sensitivity analysis procedures presented by Pek and
MacCallum (2011).This package supports two approaches: leave-one-out analysis and approximate
case influence.## Leave-One-Out Analysis
This approach examines the influence of each case by refitting a model with
this case removed.Unlike other similar
packages, the workflow adopted in semfindr separates the leave-one-out
analysis (refitting a model with one case removed) from the case influence
measures.- Users first do the leave-one-out model fitting for all cases, or
cases selected based on some criteria
(`vignette("selecting_cases", package = "semfindr")`), using
`lavaan_rerun()`.- Users then compute case influence measures
using the output of `lavaan_rerun()`.This approaches avoids unnecessarily refitting the models for each set of
influence measures, and also allows analyzing only probable influential cases
when the model takes a long time to fit.The functions were designed to be flexible
such that users can compute case influence measures such as- standardized parameter estimates and generalized Cook's distance for
selected parameters;
- changes in raw or standardized estimates of parameters;
- changes in fit measures supported by `lavaan::fitMeasures()`.This package can also be generate plots to visualize
case influence, including a bubble plot similar to that by `car::influencePlot()`
All plots generated are `ggplot` plots that can be further modified by users.
More can be found in *Quick Start* (`vignette("semfindr", package = "semfindr")`).## Approximate Case Influence
This approach computes the approximate influence of each case using *casewise*
*scores* and *casewise* *likelihood*. This method is efficient because it does
not requires refitting the model for each case. However, it can only approximate
the influence, unlike the leave-one-out approach, which produce exact influence.
This approach can be used when the number of cases is very large
and/or the model takes a long time to fit. Technical details can be found in the
vignette *Approximate Case Influence Using Scores and Casewise Likelihood*
(`vignette("casewise_scores", package = "semfindr")`).# Installation
The stable version at CRAN can be installed by `install.packages()`:
```r
install.packages("semfindr")
```The latest developmental version can be installed by `remotes::install_github`:
```r
remotes::install_github("sfcheung/semfindr")
```You can learn more about this package at the
[Github page](https://sfcheung.github.io/semfindr/) of this
package and
Quick Start (`vignette("semfindr", package = "semfindr")`).# Reference
Pek, J., & MacCallum, R. (2011). Sensitivity analysis in structural equation
models: Cases and their influence. *Multivariate Behavioral Research, 46*(2),
202-228. https://doi.org/10.1080/00273171.2011.561068# Comments, Suggestions, and Bug Reports
Please post your comments, suggestions, and bug reports as issues
at [GitHub](https://github.com/sfcheung/semptools/issues), or contact
the maintainer by email. Thanks in advance for trying out `semfindr`.