# Load required libraries
library(cSEM)
##
## Attaching package: 'cSEM'
## The following object is masked from 'package:stats':
##
## predict
library(DiagrammeR)
library(DiagrammeRsvg)
library(rsvg)
## Linking to librsvg 2.56.3
# Load external function files
source("cSEM/plot_csem.R")
# Specify the model with a saturated structural model:
model_IT_Flex="
# Composite models
ITComp =~ ITCOMP1 + ITCOMP2 + ITCOMP3 + ITCOMP4 # Change from the original code <~ for testing.
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 PLS:
csem_results <- csem(.data = ITFlex,
.model = model_IT_Flex,
.resample_method = "bootstrap",
.dominant_indicators = c("ITComp" = "ITCOMP1","ITConn"="ITCONN1",
"Modul"="MOD1","ITPers"="ITPSF1"))
plot_csem(csem_results,
title = "SEM Diagram")
plot_csem(csem_results,
title = "SEM Diagram",
graph_attrs = "layout = circo") # dot, circo, fdp, twopi, neato, osage, patchwork
plot_csem(csem_results,
title = "SEM Diagram",
edge_lengths = 10,
graph_attrs = "layout = fdp")
plot_csem(csem_results,
title = "SEM Diagram",
graph_attrs = "rankdir=LR; splines=polyline") # Or graph_attrs = c("rankdir=LR", "splines=line")
plot_csem(csem_results,
title = "SEM Structural Model Diagram",
show_structural_model_only = TRUE,
graph_attrs = "rankdir=LR")
# Define ranks for nodes
node_ranks = list(
rank1 = c("ITComp"),
rank2 = c("ITConn", "Modul"),
rank3 = c("ITPers")
)
graph_attrs = c("rankdir=LR", "ranksep=2", "nodesep=0.1")
plot_csem(csem_results,
title = "SEM Structural Model Diagram",
node_ranks = node_ranks,
show_structural_model_only = TRUE,
graph_attrs = "rankdir=LR")
plot_csem(csem_results,
title = "SEM Diagram",
node_ranks = node_ranks,
graph_attrs = graph_attrs)
plot_csem(csem_results,
title = "SEM Diagram")
plot_csem(csem_results,
title = "SEM Diagram with No Colors",
remove_colors = TRUE)
plot_csem(csem_results,
title = "SEM Diagram",
graph_attrs = "rankdir=LR")
# With correlation_lines
plot_csem(csem_results,
title = "SEM Diagram with correlation_lines",
run_correlation_lines = TRUE)
# Save the diagram as a PDF file
plot_csem_save("SEM_Custom_Diagram.pdf")
## Plot saved to SEM_Custom_Diagram.pdf
summarize(csem_results)
## ________________________________________________________________________________
## ----------------------------------- Overview -----------------------------------
##
## General information:
## ------------------------
## Estimation status = Ok
## Number of observations = 100
## Weight estimator = PLS-PM
## Inner weighting scheme = "path"
## Type of indicator correlation = Pearson
## Path model estimator = OLS
## Second-order approach = NA
## Type of path model = Linear
## Disattenuated = Yes (PLSc)
##
## Resample information:
## ---------------------
## Resample method = "bootstrap"
## Number of resamples = 499
## Number of admissible results = 474
## Approach to handle inadmissibles = "drop"
## Sign change option = "none"
## Random seed = 675256336
##
## Construct details:
## ------------------
## Name Modeled as Order Mode
##
## ITComp Common factor First order "modeA"
## ITConn Composite First order "modeB"
## Modul Composite First order "modeB"
## ITPers Composite First order "modeB"
##
## ----------------------------------- Estimates ----------------------------------
##
## Estimated path coefficients:
## ============================
## CI_percentile
## Path Estimate Std. error t-stat. p-value 95%
## ITConn ~ ITComp 0.6493 0.0844 7.6933 0.0000 [ 0.4998; 0.8235 ]
## Modul ~ ITComp 0.4317 0.1691 2.5533 0.0107 [ 0.1622; 0.7843 ]
## Modul ~ ITConn 0.3250 0.1559 2.0850 0.0371 [ 0.0045; 0.5770 ]
## ITPers ~ ITComp -0.0798 0.2752 -0.2899 0.7719 [-0.5042; 0.3830 ]
## ITPers ~ ITConn 0.2602 0.1591 1.6349 0.1021 [-0.0265; 0.5624 ]
## ITPers ~ Modul 0.4927 0.1792 2.7499 0.0060 [ 0.1694; 0.7821 ]
##
## Estimated loadings:
## ===================
## CI_percentile
## Loading Estimate Std. error t-stat. p-value 95%
## ITComp =~ ITCOMP1 0.5779 0.1119 5.1645 0.0000 [ 0.3519; 0.7743 ]
## ITComp =~ ITCOMP2 0.5776 0.1189 4.8569 0.0000 [ 0.3153; 0.7793 ]
## ITComp =~ ITCOMP3 0.8645 0.0889 9.7205 0.0000 [ 0.6358; 0.9771 ]
## ITComp =~ ITCOMP4 0.6784 0.0912 7.4380 0.0000 [ 0.4969; 0.8492 ]
## ITConn =~ ITCONN1 0.4609 0.1269 3.6318 0.0003 [ 0.1674; 0.6747 ]
## ITConn =~ ITCONN2 0.7181 0.1172 6.1266 0.0000 [ 0.4268; 0.8830 ]
## ITConn =~ ITCONN3 0.8865 0.0661 13.4112 0.0000 [ 0.7030; 0.9660 ]
## ITConn =~ ITCONN4 0.7391 0.0999 7.3966 0.0000 [ 0.4928; 0.8926 ]
## Modul =~ MOD1 0.6399 0.1119 5.7191 0.0000 [ 0.3872; 0.8113 ]
## Modul =~ MOD2 0.7890 0.0694 11.3673 0.0000 [ 0.6273; 0.8914 ]
## Modul =~ MOD3 0.7208 0.0876 8.2287 0.0000 [ 0.5273; 0.8748 ]
## Modul =~ MOD4 0.7516 0.0824 9.1234 0.0000 [ 0.5635; 0.8872 ]
## ITPers =~ ITPSF1 0.8258 0.1119 7.3814 0.0000 [ 0.5390; 0.9580 ]
## ITPers =~ ITPSF2 0.5653 0.1601 3.5316 0.0004 [ 0.1980; 0.8316 ]
## ITPers =~ ITPSF3 0.7835 0.1143 6.8573 0.0000 [ 0.4813; 0.9131 ]
## ITPers =~ ITPSF4 0.6700 0.1431 4.6836 0.0000 [ 0.3559; 0.8786 ]
##
## Estimated weights:
## ==================
## CI_percentile
## Weight Estimate Std. error t-stat. p-value 95%
## ITComp <~ ITCOMP1 0.2756 0.0495 5.5689 0.0000 [ 0.1734; 0.3662 ]
## ITComp <~ ITCOMP2 0.2754 0.0466 5.9063 0.0000 [ 0.1752; 0.3582 ]
## ITComp <~ ITCOMP3 0.4122 0.0448 9.1921 0.0000 [ 0.3233; 0.4946 ]
## ITComp <~ ITCOMP4 0.3235 0.0484 6.6867 0.0000 [ 0.2393; 0.4345 ]
## ITConn <~ ITCONN1 0.1736 0.1456 1.1917 0.2334 [-0.0919; 0.4663 ]
## ITConn <~ ITCONN2 0.2297 0.1732 1.3265 0.1847 [-0.1397; 0.5382 ]
## ITConn <~ ITCONN3 0.5472 0.1342 4.0773 0.0000 [ 0.2895; 0.8163 ]
## ITConn <~ ITCONN4 0.3653 0.1614 2.2631 0.0236 [ 0.0460; 0.6760 ]
## Modul <~ MOD1 0.2100 0.1281 1.6390 0.1012 [-0.0383; 0.4595 ]
## Modul <~ MOD2 0.4824 0.1514 3.1872 0.0014 [ 0.1406; 0.7303 ]
## Modul <~ MOD3 0.1303 0.1533 0.8500 0.3953 [-0.1227; 0.4557 ]
## Modul <~ MOD4 0.5203 0.1234 4.2159 0.0000 [ 0.2575; 0.7457 ]
## ITPers <~ ITPSF1 0.5670 0.2154 2.6319 0.0085 [ 0.1056; 0.9538 ]
## ITPers <~ ITPSF2 0.0399 0.2203 0.1811 0.8563 [-0.3605; 0.4981 ]
## ITPers <~ ITPSF3 0.4799 0.1737 2.7630 0.0057 [ 0.1048; 0.7713 ]
## ITPers <~ ITPSF4 0.1988 0.2153 0.9234 0.3558 [-0.2270; 0.6165 ]
##
## Estimated indicator correlations:
## =================================
## CI_percentile
## Correlation Estimate Std. error t-stat. p-value 95%
## ITCONN1 ~~ ITCONN2 0.4521 0.1005 4.4971 0.0000 [ 0.2170; 0.6142 ]
## ITCONN1 ~~ ITCONN3 0.2813 0.1126 2.4969 0.0125 [ 0.0312; 0.4732 ]
## ITCONN1 ~~ ITCONN4 0.0811 0.1094 0.7416 0.4584 [-0.1396; 0.2943 ]
## ITCONN2 ~~ ITCONN3 0.4841 0.0973 4.9736 0.0000 [ 0.2788; 0.6613 ]
## ITCONN2 ~~ ITCONN4 0.3970 0.0783 5.0676 0.0000 [ 0.2247; 0.5321 ]
## ITCONN3 ~~ ITCONN4 0.4908 0.0916 5.3582 0.0000 [ 0.3080; 0.6547 ]
## MOD1 ~~ MOD2 0.4652 0.0922 5.0428 0.0000 [ 0.2840; 0.6393 ]
## MOD1 ~~ MOD3 0.4036 0.0873 4.6216 0.0000 [ 0.2349; 0.5788 ]
## MOD1 ~~ MOD4 0.2939 0.0932 3.1525 0.0016 [ 0.1041; 0.4711 ]
## MOD2 ~~ MOD3 0.6237 0.0590 10.5788 0.0000 [ 0.5039; 0.7370 ]
## MOD2 ~~ MOD4 0.2453 0.0951 2.5808 0.0099 [ 0.0660; 0.4309 ]
## MOD3 ~~ MOD4 0.3939 0.0980 4.0201 0.0001 [ 0.2178; 0.5924 ]
## ITPSF1 ~~ ITPSF2 0.5557 0.0769 7.2222 0.0000 [ 0.4057; 0.7004 ]
## ITPSF1 ~~ ITPSF3 0.3387 0.0925 3.6625 0.0002 [ 0.1561; 0.4976 ]
## ITPSF1 ~~ ITPSF4 0.3727 0.1057 3.5247 0.0004 [ 0.1544; 0.5747 ]
## ITPSF2 ~~ ITPSF3 0.2691 0.1162 2.3165 0.0205 [ 0.0229; 0.4781 ]
## ITPSF2 ~~ ITPSF4 0.4083 0.1098 3.7197 0.0002 [ 0.1986; 0.6190 ]
## ITPSF3 ~~ ITPSF4 0.5075 0.0802 6.3264 0.0000 [ 0.3486; 0.6532 ]
##
## ------------------------------------ Effects -----------------------------------
##
## Estimated total effects:
## ========================
## CI_percentile
## Total effect Estimate Std. error t-stat. p-value 95%
## ITConn ~ ITComp 0.6493 0.0844 7.6933 0.0000 [ 0.4998; 0.8235 ]
## Modul ~ ITComp 0.6427 0.0898 7.1548 0.0000 [ 0.4812; 0.8251 ]
## Modul ~ ITConn 0.3250 0.1559 2.0850 0.0371 [ 0.0045; 0.5770 ]
## ITPers ~ ITComp 0.4058 0.1383 2.9341 0.0033 [ 0.1725; 0.7066 ]
## ITPers ~ ITConn 0.4203 0.1601 2.6246 0.0087 [ 0.0877; 0.7016 ]
## ITPers ~ Modul 0.4927 0.1792 2.7499 0.0060 [ 0.1694; 0.7821 ]
##
## Estimated indirect effects:
## ===========================
## CI_percentile
## Indirect effect Estimate Std. error t-stat. p-value 95%
## Modul ~ ITComp 0.2110 0.1068 1.9748 0.0483 [ 0.0032; 0.4012 ]
## ITPers ~ ITComp 0.4856 0.2025 2.3984 0.0165 [ 0.2529; 0.8516 ]
## ITPers ~ ITConn 0.1601 0.0935 1.7122 0.0869 [ 0.0012; 0.3406 ]
## ________________________________________________________________________________