Releases: FloSchuberth/cSEM
cSEM 0.6.1
Adjusted description file as asked by CRAN
cSEM 0.6.0 (2025-02-24)
Major changes
- Implementation of
testCVPAT()to perform the CVPAT test. - Enhance the
predict()function. It works now for models estimated by OrdPLS(c). Moreover, various prediction metrics have been implemented and the earliest and direct antecedent approaches have been implemented. - Implementation of a
plot()function to visualize cSEM models. - Implementation of the
calculateRelativeGoF()function which calculates the relative GoF.
Bug fixes
- Bug fix in the print function of the
assess()function. Fix bug in the calculation of the R2 and adjR2. - Bug fix in the print method of the
summarize()function. If a constant a bootstrapped SE and related statistics are set toNA. .disattenuated is no correctly displayed - Bug fix in the GSCA(m) implementation if a single indicator construct is encountered.
- Bug fix in the
testOMF()function. the saturated argument is now passed to the discrepancy measures. - Bug fix in
calculateReliabilities(). Now correction for attenuation is correctly done for PLS-PM Mode B. - Bug fix in
calculateEffects(). Now it is distinguished between recursive and non-recursive models. For recursive models rounding is no longer necessary. - Bug fix in
calculateGoF. Now single-indicator constructs are excluded. Thanks to Mehmet Mehmetoglu and Sergio Venturini.
cSEM version 0.4.0
cSEM 0.4.0 (2021-04-20)
Major changes
- New function
exportToExcel(). The function conveniently exports the results
fromassess(),predict(),summarize()andtestOMF()to an .xlsx file.
Bug fixes
-
Critical bug fix:
calculateVifModeB()did not calculate the VIFs for modeB
constructs correctly because of a bug in the calculation of the R^2.
PLEASE REVIEW YOUR CALCULATIONS in cSEM version < 0.3.1:9000! (thanks to @benjamin Liengaard
for pointing it out). -
Bug fix:
predict()no longer silently returns empty predictions when.test_data
does not contain rownames. -
Bug fix: calculation of the MSE in
modelSelectionCriteria()resulted in a
vector of incorrect length. In some cases this affected the computation
of "GM" and "Mallows_cp".
cSEM 0.3.0
Changes
-
Add lifecylce badges to postestimation functions. (#376)
-
Some arguments accepted by
assess()'s...argument had not been documented
properly. This has been fixed. Seeargs_assess_dotdotdotfor a complete list of
available arguments. -
calculateHTMT()now allows users to chose the type of confidence interval to
use when computing the critical (1-alpha)% quantile of the HTMT values (#379) -
testMGD()gains a new.output_typeargument. By default (.output_type = "structured"),
the standard output is returned. If.output_type = "structured", however,
a tibble (data frame) summarizing the test decisions in a user-friendly way
is returned. (#398) -
Remove warning from
fit()when polycoric or polyserial indicator correlation
is used during estimation. (#413) -
print.cSEMAssess()no longer prints zero for VIF values of constructs that
are not part of a particular structural equation. -
print.cSEMAssess()now prints the results ofcalculateVIFModeB(). This had been missing
in previous releases. (#384) -
Breaking:
calculateVIFModeB()now returns a matrix with the dependent construct
in the rows and the VIFs for the coresponding weights in the columns. Previously,
the output was a list. -
Add model selection criteria. See the
calculateModelSelectionCriteria()
function for details. As usual, all criteria are available viaassess(). (#412) -
Combine functions for surface, floodlight and simple effects analysis in
thedoNonlinearEffectsAnalysis()function; Breaking: functionsdoFloodlightAnalysis()
anddoSurfaceAnalysis()have been removed! -
Progress bars are now supported for every function that does resampling.
Progress bars are fully customizable via theprogressrframework created by
@HenrikBengtsson. Note: to suppress the progress bar use
progressr::handlers("void")and then run your csem commands. (#359) -
Fix bug in the computation of the Bc and Bca interval. Computation failed for
models that had no indirect effects. -
List element "reliability" of
assess()is changed to "Reliability" to be
consistent with the naming scheme of the other list elements. -
infer()automatically computes bootstrap resamples now by default if.object
does not have classcSEMResults_resampledalready. (#389) -
Remove
.alphaargument fromtestMICOM(). The argument is no longer required
as decisions are made via (possibly adjusted) p-values. (#393) -
Add checks to plot methods for
predict(),doFloodlightAnalysis, and,
doFloodlightAnalysis. -
Several documentation updates and typo corrections.
-
The Fornell-Larcker criterion is now computed by its own function
calculateFLCriterion(). Previously, it was only available viaassess(). (#387) -
Implement importance-performance matrix analysis via
doIPMA(). A corresponding
plot method is also available.
cSEM 0.2.0
cSEM 0.2.0 (30.03.2020)
Major changes
-
testMICOM()gains the.approach_p_adjustargument. The argument takes a
single character string or a vector of character strings naming the p-value
adjustment for multiple comparisons. (#138) -
Review
calculateHTMT(). 1.) Add inference; 2) fix wrong handling of
single-indicator constructs (#351); 3) Remove warning produced by
calculateHTMT()when the estimated model contains
less than 2 common factors. (#325) -
Breaking: Rename argument in
doFloodlightAnalysis(). (#343) -
New function
doSurfaceAnalysis(). See?doSurfaceAnalysis()(#349) -
Implement degrees of freedom calculation for second-order constructs.
-
Add new function
getConstructScores(). The function returns the standardized
or unstandardized construct scores. Requires acSEMResultsobject as input. (#340) -
Fix bug in
doFloodlightAnalysis(). There was an internal bug. Earlier versions
returned the wrong direct effect. If you have useddoFloodlightAnalysis()
from cSEM v. 0.1.0 results are likely wrong. -
Export plot method for
cSEMFloodlightobjects. -
Allow users to specify a lavaan model without a structural model. Now, users
can specify a model with several measurement equations (via<~or=~)
but no strucutral equations. Instead the correlations between all! constructs
must be given. Failing to do so causes an error.
New example data
-
Add indicator correlation matrix for a modified version of Summers (1965) model.
See?Sigma_Summers_composites -
Add example data sets used in Henseler (2020). See
?BergamiBagozzi2000,?ITFlex,
?LancelotMiltgenetal2016,?Russett,?Switching, and?Yooetal2000.
assess()
-
Update documentation and vignettes
-
The following functions called by
assess()are now exported and support all
of cSEM's native classes (#357, #369):calculateAVE()calculateDf()calculateGoF()calculateHTMT()(does not support models containing second-order constructs)calculateRhoT()calculateRhoT()calculatef2()calculateDML()calculateDG()calculateDL()calculateChiSquare()calculateChiSquareDf()calculateGFI()calculateNFI()calculateNNFI()calculateIFI()calculateCFI()calculateSRMR()calculateRMSEA()calculateRMSTheta()calculateVIFModeB()
-
assess()now supports all of cSEM's native classes. (#323) -
assess()now also computes and prints the total and indirect effects for each
variable as they are often used for model assessment and may thus be considered
a quality criteria.
In addition, the variance accounted for (VAF) is computed and printed as well. (#335) -
Breaking: change the name of the the quality criterion "effect size (f2)" from
esizetof2and the corresponding function fromcalculateEffectSize()to
calculatef2()as this is more common. (#336) -
Add the Chi_square statistic and the Chi_square statistic divided by its
degrees of freedom to the list of fit indices. See:?calculateChiSquare()
and?calculateChiSquareDf() -
Fix bug in
calculatef2()/assess()when one of the equations
of the structural model has only one explanatory variable. -
Fix bug related to dotdotdot arguments incorrectly passed to functions supplied
to.user_funswhen resampling. Add additional example toassess()illustrating
the use of the.user_funsarguments when given multiple functions. (#334) -
Remove warning produced when printing a
cSEMAssessobject based on a
model containing only constructs modeled as composites.
predict()
-
Update documentation for
predict(). -
Integrate and document
cSEMPredictmethod for generic functionplot(). Now
users may callplot()on an object created bypredict(). (#337) -
Add the density of the residuals as plot to
plot.cSEMPredict(). (#337) -
Remove argument
.only_common_factorsfor postestimation functionpredict().
Nowpredict()retruns predictions for composite models as well.
This will break existing code that usespredict(..., .only_common_factors = ...).
You will get anunused argument (.only_common_factors = FALSE)error.
Simply remove the argument to fix it. (#330) -
Fixed error in
predict()when the dataset used to obtain.objectcontained
a character column. (#345)
Experimental features
- Add
.fit_measuresargument totestOMF(). Now other fit measures such as
the RMSEA or the GFI can be used as the test statistic. This is a rather
experimental feature and may be removed in future versions.
Minor changes and bug fixes
-
Using
.approach_weights = "GSCA"for models containing nonlinear terms
gives a more meaningful error message. (#342) -
print.cSEMTestMICOM()no longer prints the decision but additional bootstrap
information. (in parts: #339) -
If the weighting scheme is
"PLS-PM"and.disattenuate = TRUE, dissatenuation
is longer applied to constructs using modes other than "modeA"" or "modeB". (#352) -
Model-implied indicator correlation matrix for non-recursive models
should now be calculated correctly. (#264) -
calculatef2()gives an error when the path model estimator is not "OLS". (#360, #370) -
Add
.typeargument tocalculateGFI(). Now GFI based on the ML and ULS
fitting function can be computed. (#371) -
csem()gives a meaningful error when the structural model contains only
second-order constructs (#366) -
Fix bug in
testMICOM(). Function produced an error if the data set provided
contained more columns than indicators used in the model used for
csem(). (#355) -
Fix bug in
testMICOM(). Function produced an error if the data set provided
contained an id-column even if the id-column was correctly supplied to
csem(). (#344, #338) -
When calculating the HTMT via
assess()the geometric mean of the average
monotrait−heteromethod correlation construct eta_i with the average
monotrait−heteromethod correlation of other constructs can be negative.
NaNs produced are produced in this case and the HTMT was not printed.
Added a warning and forced printing the NaNs as well. (#346) -
Add CITATION file (#331)
-
Add informative error message if
.datacontains missing values. -
Update vignettes
csem-notation
Initital release
This is the Initial release