Confirmatory Composite Analysis Using the R Package cSEM

This tutorial executes the CCA as described in Benitez et al. (2018) using the open-source R package cSEM. The cSEM package is devoted to composite-based structural equation modeling. It can be obtained via CRAN. However, it is recommended to use the most recent version which is provided via GitHub:

https://github.com/M-E-Rademaker/cSEM

The data and project files can be downloaded here:

ITFlexTutorialcSEM.knit

Install the recent version of cSEM:

devtools::install_github("M-E-Rademaker/cSEM")
install.packages("readxl")

Load the cSEM package:

library(cSEM)
## 
## Attaching package: 'cSEM'
## The following object is masked from 'package:stats':
## 
##     predict

Import the dataset. For that reason, please select the IT_Flex.slsx file.

ITFlex <- as.data.frame(readxl::read_excel(choose.files()))

Specify the model with a saturated structural model:

model_IT_Fex="
# Composite models
ITComp  <~ ITCOMP1 + ITCOMP2 + ITCOMP3 + ITCOMP4
Modul   <~ MOD1 + MOD2 + MOD3 + MOD4
ITConn  <~ ITCONN1 + ITCONN2 + ITCONN3 + ITCONN4
ITPers  <~ ITPSF1 + ITPSF2 + ITPSF3 + ITPSF4

# Saturated structural model
ITPers ~ ITComp + Modul + ITConn
Modul  ~ ITComp + ITConn
ITConn ~ ITComp
"

Estimate the model using MAXVAR:

out <- csem(.data = ITFlex,
            .model = model_IT_Fex,
            .approach_weights = "MAXVAR",
            .resample_method = "bootstrap",
            .dominant_indicators = c("ITComp" = "ITCOMP1","ITConn"="ITCONN1",
                                     "Modul"="MOD1","ITPers"="ITPSF1"))

Return model summary:

summarize(out)
## ________________________________________________________________________________
## ----------------------------------- Overview -----------------------------------
## 
##  General information:
##  ------------------------
##  Estimation status                = Ok
##  Number of observations           = 100
##  Weight estimator                 = MAXVAR
##  Type of indicator correlation    = Pearson
##  Path model estimator             = OLS
##  Second-order approach            = NA
##  Type of path model               = Linear
##  Disattenuated                    = No
## 
##  Resample information:
##  ---------------------
##  Resample method                  = "bootstrap"
##  Number of resamples              = 499
##  Number of admissible results     = 499
##  Approach to handle inadmissibles = "drop"
##  Sign change option               = "none"
##  Random seed                      = -1235360734
## 
##  Construct details:
##  ------------------
##  Name    Modeled as     Order         
## 
##  ITComp  Composite      First order   
##  ITConn  Composite      First order   
##  Modul   Composite      First order   
##  ITPers  Composite      First order   
## 
## ----------------------------------- Estimates ----------------------------------
## 
## Estimated path coefficients:
## ============================
##                                                                  CI_percentile   
##   Path               Estimate  Std. error   t-stat.   p-value         95%        
##   ITConn ~ ITComp      0.6014      0.0705    8.5329    0.0000 [ 0.4726; 0.7388 ] 
##   Modul ~ ITComp       0.3702      0.0993    3.7282    0.0002 [ 0.1761; 0.5609 ] 
##   Modul ~ ITConn       0.3878      0.0955    4.0613    0.0000 [ 0.2274; 0.5833 ] 
##   ITPers ~ ITComp      0.0182      0.1357    0.1339    0.8935 [-0.2144; 0.2956 ] 
##   ITPers ~ ITConn      0.2420      0.1082    2.2370    0.0253 [ 0.0512; 0.4715 ] 
##   ITPers ~ Modul       0.4243      0.1146    3.7041    0.0002 [ 0.1853; 0.6158 ] 
## 
## Estimated loadings:
## ===================
##                                                                    CI_percentile   
##   Loading              Estimate  Std. error   t-stat.   p-value         95%        
##   ITComp =~ ITCOMP1      0.6048      0.1293    4.6789    0.0000 [ 0.2931; 0.8102 ] 
##   ITComp =~ ITCOMP2      0.5964      0.1457    4.0932    0.0000 [ 0.2583; 0.8477 ] 
##   ITComp =~ ITCOMP3      0.9272      0.0684   13.5563    0.0000 [ 0.7272; 0.9846 ] 
##   ITComp =~ ITCOMP4      0.7164      0.1197    5.9842    0.0000 [ 0.4292; 0.8927 ] 
##   ITConn =~ ITCONN1      0.4205      0.1376    3.0556    0.0022 [ 0.1357; 0.6680 ] 
##   ITConn =~ ITCONN2      0.6899      0.1198    5.7593    0.0000 [ 0.3914; 0.8626 ] 
##   ITConn =~ ITCONN3      0.9100      0.0696   13.0674    0.0000 [ 0.7153; 0.9793 ] 
##   ITConn =~ ITCONN4      0.7354      0.1046    7.0279    0.0000 [ 0.4755; 0.8836 ] 
##   Modul =~ MOD1          0.6137      0.1219    5.0337    0.0000 [ 0.3274; 0.7878 ] 
##   Modul =~ MOD2          0.7714      0.0789    9.7837    0.0000 [ 0.5790; 0.8950 ] 
##   Modul =~ MOD3          0.7599      0.0800    9.5013    0.0000 [ 0.5877; 0.8944 ] 
##   Modul =~ MOD4          0.7636      0.0848    9.0074    0.0000 [ 0.5736; 0.8896 ] 
##   ITPers =~ ITPSF1       0.7956      0.1118    7.1168    0.0000 [ 0.5104; 0.9321 ] 
##   ITPers =~ ITPSF2       0.6493      0.1465    4.4312    0.0000 [ 0.2811; 0.8341 ] 
##   ITPers =~ ITPSF3       0.7974      0.1135    7.0272    0.0000 [ 0.4926; 0.9290 ] 
##   ITPers =~ ITPSF4       0.6628      0.1576    4.2052    0.0000 [ 0.2729; 0.8673 ] 
## 
## Estimated weights:
## ==================
##                                                                    CI_percentile   
##   Weight               Estimate  Std. error   t-stat.   p-value         95%        
##   ITComp <~ ITCOMP1      0.2798      0.1473    1.8998    0.0575 [-0.0014; 0.5647 ] 
##   ITComp <~ ITCOMP2     -0.1123      0.1896   -0.5924    0.5536 [-0.4821; 0.2476 ] 
##   ITComp <~ ITCOMP3      0.7449      0.1893    3.9351    0.0001 [ 0.3563; 1.0973 ] 
##   ITComp <~ ITCOMP4      0.2891      0.1933    1.4954    0.1348 [-0.0839; 0.6537 ] 
##   ITConn <~ ITCONN1      0.1321      0.1681    0.7860    0.4319 [-0.1964; 0.4357 ] 
##   ITConn <~ ITCONN2      0.1986      0.1797    1.1052    0.2691 [-0.1474; 0.5567 ] 
##   ITConn <~ ITCONN3      0.6056      0.1426    4.2480    0.0000 [ 0.3059; 0.8735 ] 
##   ITConn <~ ITCONN4      0.3486      0.1698    2.0526    0.0401 [-0.0231; 0.6520 ] 
##   Modul <~ MOD1          0.1739      0.1390    1.2504    0.2112 [-0.1282; 0.4117 ] 
##   Modul <~ MOD2          0.4265      0.1544    2.7623    0.0057 [ 0.1055; 0.6965 ] 
##   Modul <~ MOD3          0.2181      0.1551    1.4068    0.1595 [-0.0827; 0.5347 ] 
##   Modul <~ MOD4          0.5220      0.1249    4.1791    0.0000 [ 0.2509; 0.7443 ] 
##   ITPers <~ ITPSF1       0.4565      0.2042    2.2355    0.0254 [ 0.0771; 0.8932 ] 
##   ITPers <~ ITPSF2       0.1953      0.2091    0.9339    0.3503 [-0.2555; 0.5671 ] 
##   ITPers <~ ITPSF3       0.5127      0.1873    2.7370    0.0062 [ 0.1408; 0.8529 ] 
##   ITPers <~ ITPSF4       0.1527      0.2521    0.6059    0.5446 [-0.3761; 0.5731 ] 
## 
## Estimated indicator correlations:
## =================================
##                                                                     CI_percentile   
##   Correlation           Estimate  Std. error   t-stat.   p-value         95%        
##   ITCOMP1 ~~ ITCOMP2      0.4564      0.0916    4.9829    0.0000 [ 0.2595; 0.6151 ] 
##   ITCOMP1 ~~ ITCOMP3      0.3629      0.0987    3.6758    0.0002 [ 0.1777; 0.5440 ] 
##   ITCOMP1 ~~ ITCOMP4      0.3666      0.0885    4.1438    0.0000 [ 0.1947; 0.5391 ] 
##   ITCOMP2 ~~ ITCOMP3      0.5917      0.0794    7.4511    0.0000 [ 0.4322; 0.7326 ] 
##   ITCOMP2 ~~ ITCOMP4      0.4852      0.0816    5.9457    0.0000 [ 0.3166; 0.6327 ] 
##   ITCOMP3 ~~ ITCOMP4      0.5092      0.0956    5.3243    0.0000 [ 0.2989; 0.6739 ] 
##   ITCONN1 ~~ ITCONN2      0.4521      0.1007    4.4895    0.0000 [ 0.2405; 0.6275 ] 
##   ITCONN1 ~~ ITCONN3      0.2813      0.1059    2.6550    0.0079 [ 0.0559; 0.4715 ] 
##   ITCONN1 ~~ ITCONN4      0.0811      0.1123    0.7224    0.4701 [-0.1488; 0.2889 ] 
##   ITCONN2 ~~ ITCONN3      0.4841      0.0971    4.9842    0.0000 [ 0.2841; 0.6562 ] 
##   ITCONN2 ~~ ITCONN4      0.3970      0.0775    5.1257    0.0000 [ 0.2348; 0.5219 ] 
##   ITCONN3 ~~ ITCONN4      0.4908      0.1027    4.7801    0.0000 [ 0.2681; 0.6514 ] 
##   MOD1 ~~ MOD2            0.4652      0.0911    5.1054    0.0000 [ 0.2719; 0.6280 ] 
##   MOD1 ~~ MOD3            0.4036      0.0874    4.6184    0.0000 [ 0.2080; 0.5464 ] 
##   MOD1 ~~ MOD4            0.2939      0.0955    3.0777    0.0021 [ 0.0941; 0.4760 ] 
##   MOD2 ~~ MOD3            0.6237      0.0547   11.3963    0.0000 [ 0.5169; 0.7249 ] 
##   MOD2 ~~ MOD4            0.2453      0.0977    2.5105    0.0121 [ 0.0556; 0.4276 ] 
##   MOD3 ~~ MOD4            0.3939      0.0977    4.0308    0.0001 [ 0.2116; 0.5746 ] 
##   ITPSF1 ~~ ITPSF2        0.5557      0.0790    7.0346    0.0000 [ 0.3937; 0.6940 ] 
##   ITPSF1 ~~ ITPSF3        0.3387      0.0923    3.6711    0.0002 [ 0.1558; 0.5081 ] 
##   ITPSF1 ~~ ITPSF4        0.3727      0.1033    3.6093    0.0003 [ 0.1440; 0.5468 ] 
##   ITPSF2 ~~ ITPSF3        0.2691      0.1185    2.2702    0.0232 [ 0.0115; 0.4745 ] 
##   ITPSF2 ~~ ITPSF4        0.4083      0.1100    3.7117    0.0002 [ 0.1520; 0.5981 ] 
##   ITPSF3 ~~ ITPSF4        0.5075      0.0818    6.2010    0.0000 [ 0.3425; 0.6615 ] 
## 
## ------------------------------------ Effects -----------------------------------
## 
## Estimated total effects:
## ========================
##                                                                  CI_percentile   
##   Total effect       Estimate  Std. error   t-stat.   p-value         95%        
##   ITConn ~ ITComp      0.6014      0.0705    8.5329    0.0000 [ 0.4726; 0.7388 ] 
##   Modul ~ ITComp       0.6035      0.0637    9.4711    0.0000 [ 0.4943; 0.7482 ] 
##   Modul ~ ITConn       0.3878      0.0955    4.0613    0.0000 [ 0.2274; 0.5833 ] 
##   ITPers ~ ITComp      0.4197      0.1067    3.9328    0.0001 [ 0.2290; 0.6627 ] 
##   ITPers ~ ITConn      0.4065      0.0992    4.0961    0.0000 [ 0.2134; 0.6001 ] 
##   ITPers ~ Modul       0.4243      0.1146    3.7041    0.0002 [ 0.1853; 0.6158 ] 
## 
## Estimated indirect effects:
## ===========================
##                                                                  CI_percentile   
##   Indirect effect    Estimate  Std. error   t-stat.   p-value         95%        
##   Modul ~ ITComp       0.2332      0.0641    3.6406    0.0003 [ 0.1390; 0.3935 ] 
##   ITPers ~ ITComp      0.4016      0.0767    5.2390    0.0000 [ 0.2614; 0.5604 ] 
##   ITPers ~ ITConn      0.1645      0.0661    2.4894    0.0128 [ 0.0594; 0.3036 ] 
## ________________________________________________________________________________

Assess the overall model fit:

outoverall=testOMF(out)
outoverall
## ________________________________________________________________________________
## --------- Test for overall model fit based on Beran & Srivastava (1985) --------
## 
## Null hypothesis:
## 
##        +------------------------------------------------------------------+
##        |                                                                  |
##        |   H0: The model-implied indicator covariance matrix equals the   |
##        |   population indicator covariance matrix.                        |
##        |                                                                  |
##        +------------------------------------------------------------------+
## 
## Test statistic and critical value: 
## 
##                                      Critical value
##  Distance measure    Test statistic    95%   
##  dG                      0.2762      0.3046  
##  SRMR                    0.0651      0.0690  
##  dL                      0.5763      0.6479  
##  dML                     1.3221      1.4195  
##  
## 
## Decision: 
## 
##                          Significance level
##  Distance measure             95%        
##  dG                      Do not reject   
##  SRMR                    Do not reject   
##  dL                      Do not reject   
##  dML                     Do not reject   
##  
## Additional information:
## 
##  Out of 499 bootstrap replications 499 are admissible.
##  See ?verify() for what constitutes an inadmissible result.
## 
##  The seed used was: -1265921936
## ________________________________________________________________________________

Reference:

Benitez, J., Ray, G., & Henseler, J. (2018). Impact of information technology infrastructure flexibility on mergers and acquisitions. MIS Quarterly, 42(1), 25-43, https://doi.org/10.25300/MISQ/2018/13245.