Description Usage Arguments Value Analyzing the boostrap results References See Also Examples
matrixpls.boot
is a convenience method that implements bootstrapping of matrixpls
with boot
method of the boot
package.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
data |
Matrix or data frame containing the raw data. |
model |
There are two options for this argument: 1. lavaan script or lavaan parameter
table, or 2. a list containing three matrices
|
... |
All other arguments are passed through to |
R |
Number of bootstrap samples to draw. |
signChange |
Sign change correction function. |
parallel |
The type of parallel operation to be used (if any). If missing, the
default is taken from the option |
ncpus |
integer: number of processes to be used in parallel operation: typically one would chose this to the number of available CPUs. |
dropInadmissible |
A logical indicating whether non-convergent and inadmissible replications should be discarded. |
stopOnError |
A logical indicating whether boostrapping should be continued when error occurs in a replication. |
extraFun |
A function that takes a |
object |
object of class |
ci.type |
A vector of character strings representing the type of intervals required. Passed on to |
An object of class matrixplsboot
and boot
.
The output can be analyzed with any of the functions provided by the boot
package.
For example, the boot.ci
function can be used for calculating confidence
intervals and the empinf
function can be used to calculate influence values that may
be useful for identifying outliers.
The class matrixplsboot
provides only a summary
function, which calculates a set
of statistics that are commonly of interest after boostrapping. This includes standard errors,
t statistics (estimate / SE) and p-values based on Student's t distribution and standard normal
distribution. Because the sampling distribution of the parameter estimates calculated by
matrixpls
are not always known, the p-values cannot be expected to be unbiased.
This concern
applies particularly when using PLS weights. Because the PLS literature provides conflicting
advice on which probability distribution to use as a reference, the summary
method of
matrixplsboot
produces two-tailed p-values based on four different probability
distributions. The regression p values are based on comparing the t statistic against
the references distribution used in regression analysis, namely Student's t distribution with
n - k - 1
degrees of freedom. The Hair p values are based on
Hair et al's (2014, p. 134) recommendation to ignore the number of independent variables
k
and set the degrees of freedom to n - 1
. The Henseler p values are based
on the recommendation by
Henseler et al (2009, p. 305) that the degrees of freedom should be set as n + m - 2
,
where m
is always 1 and n
is the number of bootstrap samples. The z
p values
are based on comparing the t statistic against the standard normal distribution. This choice
can be motivated by asymptotic normality of the PLS estimates in certain conditions.
Hair, J. F., Hult, G. T. M., Ringle, C. M., & Sarstedt, M. (2014). A primer on partial least squares structural equations modeling (PLS-SEM). Los Angeles: SAGE.
Henseler, J., Ringle, C. M., & Sinkovics, R. R. (2009). The use of partial least squares path modeling in international marketing. Advances in International Marketing, 20, 277–319.
Rönkkö, M., & Evermann, J. (2013). A critical examination of common beliefs about partial least squares path modeling. Organizational Research Methods, 16(3), 425–448. doi: 10.1177/1094428112474693
Rönkkö, M., McIntosh, C. N., & Antonakis, J. (2015). On the adoption of partial least squares in psychological research: Caveat emptor. Personality and Individual Differences, (87), 76–84. doi: 10.1016/j.paid.2015.07.019
Sign change corrections: signChange.individual
; signChange.construct
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | # Run the customer satisfaction example form plspm
# load dataset satisfaction
data(satisfaction)
# inner model matrix
IMAG = c(0,0,0,0,0,0)
EXPE = c(1,0,0,0,0,0)
QUAL = c(0,1,0,0,0,0)
VAL = c(0,1,1,0,0,0)
SAT = c(1,1,1,1,0,0)
LOY = c(1,0,0,0,1,0)
inner = rbind(IMAG, EXPE, QUAL, VAL, SAT, LOY)
colnames(inner) <- rownames(inner)
# Reflective model
reflective<- matrix(
c(1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1),
27,6, dimnames = list(colnames(satisfaction)[1:27],colnames(inner)))
# empty formative model
formative <- matrix(0, 6, 27, dimnames = list(colnames(inner),
colnames(satisfaction)[1:27]))
# Only 100 replications to make the example faster when running on single processor.
# Increase the number of replications (e.g. to 500) to get the BCa intervals
matrixpls.boot.out <- matrixpls.boot(satisfaction[,1:27],
model = list(inner = inner,
reflective = reflective,
formative = formative),
R = 100)
print(matrixpls.boot.out)
summary(matrixpls.boot.out)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.