*! version 0.5.3 28May2024

Title

plssem postestimation -- Postestimation tools for plssem

Postestimation commands

The following postestimation commands are of special interest after
plssem:

Command Description

estat indirect estimation and
inference for indirect effects

estat total decomposition of
total effects

estat mediate testing of
a mediation effect

* estat vif variance inflation
factors for the structural model equations sample

* estat unobshet unobserved
heterogeneity assessment

estat htmt heterotrait-monotrait
ratio of correlations for assessing discriminant validity

estat ci confidence intervals
for all model's coefficients

estat f2 Cohen's f^2 effect
sizes

estat ic model's information and
selection criteria

estat dist model's distance
measures

estat blindfolding blindfolding
procedure

* estat vif and estat unobshet are not available for models fitted using bootstrap.

The following standard postestimation commands are also available:

Command Description

predict fitted values and residuals

Syntax for estat

Display the estimation results for up to 5 indirect effects

estat indirect,
effects(efflist) [boot(#) seed(#) level(#) digits(#)]

Display the decomposition of the total effects in the corresponding direct and indirect effects

estat total
[, digits(#) plot]

Display the mediation analysis using partial least squares structural equation modelling

estat mediate,
indep(varname) med(varname)
dep(varname) [breps(#) seed(#) zlc
rit rid bca level(#) digits(#)]

Display the variance inflation factors for the structural model equations

estat vif
[, digits(#)]

Display the assessment for the presence of unobserved heterogeneity

estat unobshet,
method(methodname) [numclass(#) maxclass(#)
dendrogram maxiter(#) stop(#) test reps(#)
restart(#) groups(numlist) popsize(#) numgen(#)
pmut(#) ptransf(#) maxitgas(#) seed(#)
plot name(varname) digits(#)]

Display the assessment of discriminant validity using heterotrait-monotrait
ratios of correlations

estat htmt,
[cutoff(#) digits(#)]

Display the confidence intervals for all model's coefficients

estat ci,
type(citype) [level(#) digits(#)]

Display the Cohen's f^2 effect sizes

estat f2,
[digits(#)]

Display the model's information and selection criteria

estat ic,
[digits(#)]

Display the model's distance measures

estat dist,
[digits(#)]

Blindfolding procedure

estat blindfolding,
distance(#) [digits(#)]

Description for estat

estat indirect
estimates the (standardized) indirect effects and the corresponding tests of significance
using the Sobel's z statistic (default) as well as the bootstrap
approach (Sobel 1982,
Baron and Kenny 1986,
VanderWeele 2015). The command can
estimate up to five different indirect effects at a time. Each of these should
specified by sequentially typing the dependent, mediator and independent variable
from any PLS-SEM model. By adding the sub-option boot(#), you can obtain
the results based on the bootstrap approach. To facilitate the reproducibility of
bootstrap results, the sub-option seed(#) can further be added. Confidence intervals
(0.95 is the default) for the estimated indirect effects are also provided. To change
the level of confidence interval, the sub-option level(#) can be added. To change the
number of decimals used to display the model estimates, you can change the default (3)
to any other value by adding the sub-option digits(#).

estat total
produces the decomposition of the total effects into standardized direct and indirect effects.
Adding the sub-option plot generates a bar plot of the effects. You can change
the number decimals digits reported by setting the sub-option digits(#).

estat mediate
conducts a mediation analysis based on a fitted PLS-SEM model estimated using the
plssem command. Two methods are implemented, the
Baron and Kenny (1986) approach adjusted by
Iacobucci et al. 2007,
and that by Zhao et al. 2010.

estat vif
computes the variance inflation factors (VIFs) for the independent variables
of the equations in the structural part of a PLS-SEM model. With the
digit(#) sub-option you change the number decimals digits displayed.

estat unobshet
assesses the presence of unobserved heterogeneity in the fitted PLS-SEM model
using the methodname approach. Currently, the REBUS-PLS
(Trinchera 2007), FIMIX-PLS
(Hahn et al. 2007) and PLS-GAS
(Ringle et al. 2014) approaches are implemented.

estat htmt
assesses discriminant validity using heterotrait-monotrait ratios of correlations; both
the HTMT (arithmetic average of correlations) and HTMT2 (geometric average of correlations)
approaches are available.

estat ci
computes the confidence intervals for both the measurement and structural models'
coefficients; different types of confidence intervals are available.

estat f2
computes the Cohen's f^2 effect sizes (Cohen 1988).

estat ic
computes some information and selection criteria for the fitted model for each
structural equation of the model separately, as suggested by
Sharma et al. 2019. More specifically,
the command provides the following indexes: Akaike information criterion (AIC),
Corrected AIC (AICc), Unbiased AIC (AICu), Bayesian information criterion (BIC),
final prediction error (FPE), Hannan-Quinn criterion (HQ) and Corrected HQ criterion
(HQc). The definitions used by the commend for these indexes can be found in table B1
of Sharma et al. 2019.

estat dist
computes some measures of the distance between the empirical and the model-implied
indicator correlation matrices. Currently, the geodesic distance, the squared Euclidean
distance and the the maximum likelihood-based distance function are implemented.

estat blindfolding
computes the Q2 and q2 values (Geisser 1974;
Stone 1974) to assess the out-of-sample
predictive relevance. These measures are obtained by using the blindfolding procedure
for a specified omission distance.

Options for estat

boot(#),
an option used with estat indirect, allows to estimate the indirect
effects using bootstrap; the number of replications is specified via {#}.

seed(#),
an option used with estat indirect and estat mediate, allows to set
the bootstrap seed number.

level(#),
an option used with estat indirect, estat mediate and estat ci,
allows to set the confidence level to use for indirect effects confidence intervals;
default is 0.95.

digits(#),
specifies the number of decimal digits to display in the output.

plot,
an option used with estat total, provides a graphical representation of
the total effects decomposition.

method(methodname),
an option used with estat unobshet, allows choosing the method to use for
assessing the presence of unobserved heterogeneity; available methods are rebus,
fimix and gas; default is rebus.

numclass(#),
an option used with estat unobshet, allows to manually set the number of
classes to use in the REBUS-PLS analysis; minimum is 2. If not specified, the
number of classes is automatically chosen based on the Calinski-Harabasz
pseudo-F index stopping rule as implemented in cluster stop. In
this case, a Ward hierarchical clustering algorithm is used.

maxclass(#),
an option used with estat unobshet, allows to set the maximum number of
classes for which the automatic stopping rule is to be computed when
numclass(#) is not specified; default is 20.

dendrogram,
an option used with estat unobshet, allows to visualize the dendrogram
for a Ward hierarchical clustering algorithm on the base of the residuals of
the global model. The dendrogram allows to assess the quality of choice for the
number of classes. This option is available only when method(rebus) is
chosen.

maxiter(#),
an option used with estat unobshet, allows to set the maximum number
of iterations the REBUS-PLS algorithm runs; default is 50.

stop(#),
an option used with estat unobshet, allows to set the stopping rule for
the chosen algorithm; for REBUS-PLS this refers to the stability in class
composition from one iteration to the other (i.e. percentage of units changing
class at each iteration); for FIMIX-PLS it refers to the (absolute) change in the
complete loglikelihood value in the EM alogrithm. Default is 0.005
(i.e. 0.5%) when REBUS-PLS is chosen and 1e-5 when FIMIX-PLS is used.

test,
an option used with estat unobshet, allows to specify whether a
permutation test for the Global Quality Index (GQI) of a REBUS-PLS solution must
be performed. This option is available only when method(rebus) is
chosen.

reps(#),
an option used with estat unobshet, allows to set the number of replications
of the permutation test on the GQI; default is 50. This option is available
only when method(rebus) is chosen.

restart(#),
an option used with estat unobshet when the FIMIX-PLS method is chosen,
allows to set the number of EM algortihm runs in the estimation of the
mixture model's parameters; default is 10.

groups(numlist),
an option used with estat unobshet when the FIMIX-PLS method is chosen,
allows to compute the solution for a range of selected group number values and
compare them using a set of fit indices, namely Akaike's information criterion
(AIC), modified AIC with factor 3 (AIC3), modified AIC with factor 4 (AIC4),
Bayesian information criterion (BIC), consistent AIC (CAIC),
Hannan-Quinn criterion (HQ), minimum description length with factor 5 (MDL5),
log-likelihood (LnL), entropy statistic (EN), non-fuzzy index (NFI),
normalized entropy criterion (NEC).

popsize(#),
an option used with estat unobshet when the PLS-GAS method is chosen,
allows to set the size of each generation in the genetic algorithm; deafult
is 100.

numgen(#),
an option used with estat unobshet when the PLS-GAS method is chosen,
allows to set the number of generations to create during the genetic algorithm;
deafult is 1000.

pmut(#),
an option used with estat unobshet when the PLS-GAS method is chosen,
allows to set the probability to mutate for a chromosome (i.e. an individual in a
a generation) in the genetic algorithm; deafult is 0.3.

ptransf(#),
an option used with estat unobshet when the PLS-GAS method is chosen,
allows to set the probability to mutate for a single gene in a chromosome during
the genetic algorithm calculation; deafult is 0.1.

maxitgas(#),
an option used with estat unobshet, allows to set the maximum number
of iterations the PLS-GAS algorithm; default is 30.

seed(#),
allows to set the seed for reproducing results.

plot,
an option used with estat unobshet when the REBUS-PLS method is chosen,
allows to visualize the empirical distribution (i.e. the histogram)
corresponding to the replications of the permutation test on the GQI.

name(varname),
an option used with estat unobshet, allows to set the name of the variable
that will contain the final classification obtained.

dep(varname),
an option used with estat mediate, specifies the name of the dependent
variable to use in the mediation analysis.

med(varname),
an option used with estat mediate, specifies the name of the mediator
variable to use in the mediation analysis.

indep(varname),
an option used with estat mediate, specifies the name of the independent
variable to use in the mediation analysis.

breps(#),
an option used with estat mediate, specifies the number of bootstrap
replications to be performed. The default is 50.

zlc,
an option used with estat mediate providing the approach by
Zhao et al. 2010 together with
the Baron and Kenny (1986) approach
adjusted by Iacobucci et al. 2007
(default).

rit,
an option used with estat mediate providing the ratio of the indirect
effect to the total effect.

rid,
an option used with estat mediate providing the ratio of the indirect
effect to the direct effect.

bca,
an option used with estat mediate providing the bias-corrected accelerated
(BCa) bootstrap confidence intervals instead of the percentile confidence
intervals (default).

cutoff(#),
an option used with estat htmt, specifies the cutoff value to use for
showing the heterotrait-monotrait ratios.

type(citype),
an option used with estat ci, allows to choose the type of confidence
intervals to compute; available methods are standard_z (assumes
a standard normal distribution), standard_t (assumes
a t distribution with n - 1 degrees of freedom), percentile (utilizes
the quantiles of the distribution of the bootstrap resample estimates), and
bc (bias-corrected confidence interval).

distance(#),
an option used with estat blindfolding, allows to set the omission distance
to use in the blindfolding procedure; it must be an integer larger than 1
and it has to be chosen so that the number of observations used in model
estimation divided by the omission distance is not an integer.

Syntax for predict

predict [, statistic noouter noinner]

statistic

Main
xb linear predictions

residuals residuals

Description for predict

predict creates new variables containing linear predictions and residuals. These
quantities are provided only for reflective blocks of manifest variables in the
measurement/outer model and for endogenous latent variables in the structural/inner model.

The newly computed predictions will replace those already present in the data set.

Options for predict

Main

xb calculates the linear predictions (fitted values).

residuals calculates the residuals.

Options

nooouter fitted values and residuals for the measurement/outer model
are not saved in the data set.

nooinner fitted values and residuals for the structural/inner model
are not saved in the data set.

Stored results for estat indirect

estat indirect stores the following in r():

Matrices

r(indirect) matrix of indirect effect testing results

Stored results for estat mediate

estat mediate stores the following in r():

Matrices

r(mediate) matrix of indirect effect testing results

Stored results for estat ci

estat ci stores the following in r():

Scalars

e(level) confidence level

Macros

e(ci_type) type of confidence intervals

Matrices

r(path_ci) matrix of path coefficients confidence intervals

r(load_ci) matrix of loadings confidence intervals

Stored results for estat htmt

estat htmt stores the following in r():

Matrices

r(htmt) matrix of heterotrait-monotrait ratios (HTMT)

r(htmt2) matrix of advanced heterotrait-monotrait ratios (HTMT2)

Stored results for estat f2

estat f2 stores the following in r():

Matrices

r(f2) matrix of the Cohen's f^2 effect sizes

Stored results for estat ic

estat ic stores the following in r():

Matrices

r(ic) matrix of the model's information and selection criteria

Stored results for estat dist

estat dist stores the following in r():

Matrices

r(dist) matrix of the model's distance measures

Stored results for estat blindfolding

estat blindfolding stores the following in r():

Matrices

r(Q2) matrix with the Q2 measures

r(q2) matrix with the q2 measures

Stored results for predict

predict stores the following in r():

Matrices

r(fitted) matrix of fitted values for the outer and inner models

r(residuals) matrix of residuals for the outer and inner models

Examples

Setup

. sysuse workout2, clear

Model estimation

. plssem (Attractive > face sexy) (Appearance > body appear attract) (Muscle > muscle strength endur) (Weight > lweight calories cweight), structural(Appearance Attractive, Muscle Appearance, Weight Appearance)

Discriminant validity assessment (HTMT)

. estat htmt

Structural model assessment

. estat vif

. estat f2

. estat ic

Indirect effects

. estat indirect, effects(Muscle Appearance Attractive, Weight Appearance Attractive)

Confidence intervals

. estat ci, type(bc) digits(5)

Predictions

. predict, xb residuals

. describe *_hat *_res

Assessment of unobserved heterogeneity using REBUS-PLS

. estat unobshet, test reps(200) plot

Assessment of unobserved heterogeneity using FIMIX-PLS

. estat unobshet, method(fimix) groups(1/5) stop(1e-5) restart(3)

Authors

Sergio Venturini

Department of Economics and Social Sciences

Università Cattolica del Sacro Cuore, Italy

sergio.venturini@unicatt.it

Mehmet Mehmetoglu

Department of Psychology

Norwegian University of Science and Technology

mehmetm@svt.ntnu.no

References

Baron, R. M., and Kenny, D. A. 1986. The Moderator-Mediator Variable Distinction in Social Psychological
Research: Conceptual, Strategic, and Statistical Considerations. Journal of
Personality and Social Psychology, 51, 1173-1182.

Cohen, J. 1988. Statistical Power Analysis for the Behavioral Sciences. Mahwah, NJ: Erlbaum.

Geisser, S. 1974. A predictive approach to the random effects model. Biometrika, 61, 101–107.

Hahn, C., Johnson, M. D., Herrmann, A., and Huber, F. 2002. Capturing Customer Heterogeneity Using a
Finite Mixture PLS Approach. Schmalenbach Business Review, 54, 243-269.

Hair, J. F., Hult, G. T. M., Ringle, C. M., and Sarstedt, M. 2022. A Primer on Partial Least Squares Structural Equation Modeling (PLS-SEM). Third edition. Sage.

Hair, J. F., Sarstedt, M., Ringle, C. M., and Gudergan, S. P. 2018. Advanced Issues in Partial Least Squares Structural Equation Modeling. Sage.

Iacobucci, D., Saldanha, N., & Deng, X. 2007. A meditation on mediation: evidence that structural equation models perform better than regressions. Journal of
Consumer Psychology, 17, 140-154.

Mehmetoglu, M., and Venturini, S. 2021. Structural Equation Modelling with Partial Least Squares Using Stata and R. CRC Press.

Ringle, C. M., Sarstedt, M., and Schlittgen, R. 2014. Genetic algorithm segmentation
in partial least squares structural equation modeling. OR Spectrum, 36, 251–276.

Sharma, P., Sarstedt, M., Shmueli, G., Kim, K. H., Thiele, K. O. 2019. PLS-Based Model Selection: The Role of Alternative Explanations in Information Systems Research. Journal of the Association for Information Systems, 20(4), 346-397.

Sobel, M. N. 1982. Asymptotic Confidence Intervals for Indirect Effects in Structural Equations
Models. In Leinhart, S. (ed.), Sociological Methodology, pp. 290-312. Jossey-Bass.

Stone, S. 1974. Cross-validatory choice and assessment of statistical pre- dictions.
Journal of the Royal Statistical Society, 36, 111–147.

Trinchera, L. 2007. Unobserved Heterogeneity in Structural Equation Models: a new approach to latent class detection in PLS Path Modeling. Ph.D. Thesis.

VanderWeele, T. J. 2015. Explanation in Causal Inference. Oxford University Press.

Zhao, X., Lynch, J. G. Jr., & Chen, Q. 2010. Reconsidering Baron and Kenny: myths and
truths about mediation analysis. Journal of Consumer Research, 37, 197-206.