Skip to content

Commit 7edbc6b

Browse files
committed
merge changes
Merge branch 'master' of github.com:simsem/semTools # Conflicts: # semTools/NAMESPACE # semTools/NEWS.md
2 parents 0d51a45 + c651b23 commit 7edbc6b

13 files changed

Lines changed: 1766 additions & 579 deletions

semTools/NAMESPACE

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# Generated by roxygen2: do not edit by hand
22

3+
S3method(print,epcEquivCheckStd)
4+
S3method(print,summaryEpcEquivFit)
5+
S3method(summary,epcequivfit.data.frame)
36
export(AVE)
47
export(PAVranking)
58
export(SSpower)
@@ -16,6 +19,8 @@ export(compareFit)
1619
export(discriminantValidity)
1720
export(efa.ekc)
1821
export(efaUnrotate)
22+
export(epcEquivCheck)
23+
export(epcEquivFit)
1924
export(findRMSEApower)
2025
export(findRMSEApowernested)
2126
export(findRMSEAsamplesize)
@@ -40,7 +45,6 @@ export(mardiaKurtosis)
4045
export(mardiaSkew)
4146
export(maximalRelia)
4247
export(measEq.syntax)
43-
export(miPowerFit)
4448
export(monteCarloCI)
4549
export(moreFitIndices)
4650
export(mvrnonnorm)
@@ -97,13 +101,16 @@ importFrom(graphics,lines)
97101
importFrom(graphics,par)
98102
importFrom(graphics,plot)
99103
importFrom(lavaan,cfa)
104+
importFrom(lavaan,fitMeasures)
100105
importFrom(lavaan,lavInspect)
101106
importFrom(lavaan,lavListInspect)
102107
importFrom(lavaan,lavNames)
103108
importFrom(lavaan,lavPredict)
104109
importFrom(lavaan,lavTestLRT)
110+
importFrom(lavaan,lavaan)
105111
importFrom(lavaan,lavaanList)
106112
importFrom(lavaan,lavaanify)
113+
importFrom(lavaan,modificationIndices)
107114
importFrom(lavaan,parTable)
108115
importFrom(methods,as)
109116
importFrom(methods,getMethod)

semTools/NEWS.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,15 @@
1212
- `return.df=` argument replaced by `simplify=`
1313
- Coefficients now returned (by default) in a list, with headers indicating how to appropriately interpret each coefficient.
1414
The verbose headers can be suppressed (mimicking old behavior) by setting `simplify = -1L`
15-
- `miPowerFit()` has been renamed `epcEquivFit()` and enhanced by a new `epcEquivCheck()` function
16-
to assess whether trivial misspecification is difficult to establish for a given model under the
17-
EPC equivalence testing framework (see [PR #151](https://github.com/simsem/semTools/pull/151)).
15+
- `miPowerFit()` has been renamed to `epcEquivFit()` and its functionality has been substantially extended
16+
(see [PR #151](https://github.com/simsem/semTools/pull/151)).
17+
- The output of `epcEquivFit()` now has its own class, `epcequivfit.data.frame`. A dedicated `summary()` method is provided, which reports both local classifications of fixed parameters and the resulting global equivalence decision.
18+
- By default, `epcEquivFit()` focuses on equivalence testing based on expected parameter changes (EPCs). The Saris, Satorra, and van der Veld (2009) decision rule based on modification indices and power is retained but is no longer treated as the primary result, as simulation results favor the EPC equivalence-testing approach.
19+
- The equivalence-testing procedure has been extended to include an underpowered classification when the EPC confidence interval (CI) is wider than the smallest effect size of interest (SESOI) region.
20+
- The arguments and the resulting column names with `target.epc` has been renamed to reflect the smallest effect size of interest (SESOI), consistent with terminology in the equivalence-testing literature.
21+
- Standardized EPCs for indicator residual covariances are now computed by scaling residual covariances by residual variances, rather than by total indicator variances as in `lavaan` and other SEM packages, providing a more appropriate effect-size representation for residual relationships.
22+
- A new function, `epcEquivCheck()`, is introduced to assess whether trivial misspecification is difficult to establish for a given model under the EPC equivalence-testing framework.
23+
- Clipboard utilities have been updated to accommodate these changes, and all relevant documentation has been revised to reflect the transition from `miPowerFit()` to `epcEquivFit()`.
1824

1925
## Removed Features:
2026

semTools/R/clipboard.R

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
##' [FitDiff-class].
1919
##' @param what The attributes of the `lavaan` object to be copied in the
2020
##' clipboard. `"summary"` is to copy the screen provided from the
21-
##' `summary` function. `"mifit"` is to copy the result from the
22-
##' [miPowerFit()] function. Other attributes listed in the
21+
##' `summary` function. `"epceqfit"` is to copy the result from the
22+
##' [epcEquivFit()] function. Other attributes listed in the
2323
##' `inspect` method in the [lavaan::lavaan-class] could also be
2424
##' used, such as `"coef"`, `"se"`, `"fit"`, `"samp"`, and
2525
##' so on. Ignored for [FitDiff-class]-class objects.
@@ -33,7 +33,7 @@
3333
##' @param writeArgs `list` of additional arguments to be passed to
3434
##' [utils::write.table()]
3535
##' @param \dots Additional arguments when passing a `lavaan` object to the
36-
##' `summary` or [miPowerFit()] function.
36+
##' `summary` or [epcEquivFit()] function.
3737
##'
3838
##' @return The resulting output will be saved into a clipboard or a file. If
3939
##' using the `clipboard` function, users may paste it in the other
@@ -60,8 +60,8 @@
6060
##' # pass additional arguments to summary() method for class?lavaan
6161
##' clipboard(fit, rsquare = TRUE, standardized = TRUE, fit.measures = TRUE)
6262
##'
63-
##' # Copy modification indices and fit stats from the miPowerFit() function
64-
##' clipboard(fit, "mifit")
63+
##' # Copy the EPC equivalence testing results from the epcEquivFit() function
64+
##' clipboard(fit, "epceqfit")
6565
##'
6666
##' # Copy the parameter estimates
6767
##' clipboard(fit, "coef")
@@ -78,8 +78,8 @@
7878
##' # Save the summary of the lavaan object
7979
##' saveFile(fit, "out.txt")
8080
##'
81-
##' # Save modification indices and fit stats from the miPowerFit() function
82-
##' saveFile(fit, "out.txt", "mifit")
81+
##' # Save the EPC equivalence testing results from the epcEquivFit() function
82+
##' saveFile(fit, "out.txt", "epceqfit")
8383
##'
8484
##' # Save the parameter estimates
8585
##' saveFile(fit, "out.txt", "coef")
@@ -162,13 +162,13 @@ saveFileLavaan <- function(object, file, what = "summary", tableFormat = FALSE,
162162
writeArgs$x <- paste(utils::capture.output(summary(object, ...)),
163163
collapse = "\n")
164164
}
165-
} else if (what == "mifit") {
165+
} else if (what %in% c("epceqfit", "mifit")) { # "mifit" retained for backward compatibility
166166
if (tableFormat) {
167-
writeArgs$x <- miPowerFit(object, ...)
167+
writeArgs$x <- epcEquivFit(object, ...)
168168
if (is.null(writeArgs$row.names)) writeArgs$row.names <- FALSE
169169
if (is.null(writeArgs$col.names)) writeArgs$col.names <- TRUE
170170
} else {
171-
writeArgs$x <- paste(utils::capture.output(miPowerFit(object, ...)),
171+
writeArgs$x <- paste(utils::capture.output(epcEquivFit(object, ...)),
172172
collapse = "\n")
173173
}
174174
} else {

semTools/R/fitIndices.R

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,8 @@
152152
##'
153153
##' @seealso
154154
##' \itemize{
155-
##' \item [miPowerFit()] For the modification indices and their
156-
##' power approach for model fit evaluation
155+
##' \item [epcEquivFit()] For the equivalence testing based on expected
156+
##' parameter changes for model fit evaluation
157157
##' \item [nullRMSEA()] For RMSEA of the default independence model
158158
##' }
159159
##'

0 commit comments

Comments
 (0)