################################################### ### semPLS ################################################### library("semPLS") ################################################### ### ECSI ################################################### data("ECSIsm") ECSIsm data("ECSImm") ECSImm ECSImm[ECSImm[, 1] == "Expectation", ] ECSImm[ECSImm[ , 1] == "Expectation", 2:1] ################################################### ### mobi ################################################### data("mobi") ECSI <- plsm(data = mobi, strucmod = ECSIsm, measuremod = ECSImm) mvpairs(model = ECSI, data = mobi, LVs = "Expectation") ################################################### ### sempls ################################################### ecsi <- sempls(model = ECSI, data = mobi, wscheme = "centroid") ecsi names(ecsi) pathDiagram(ecsi, file = "ecsiStructure", full = FALSE, edge.labels = "both", output.type = "graphics", digits = 2, graphics.fmt = "pdf") pC <- pathCoeff(ecsi) print(pC, abbreviate = TRUE, minlength = 3) tE <- totalEffects(ecsi) print(tE, abbreviate = TRUE, minlength = 3) plsWeights(ecsi) plsLoadings(ecsi) plot(ecsi) densityplot(ecsi, use = "residuals") ################################################### ### bootstrap ################################################### set.seed(123) ecsiBoot <- bootsempls(ecsi, nboot = 500, start = "ones", verbose = FALSE) ecsiBoot ecsiBootsummary <- summary(ecsiBoot, type = "bca", level = 0.90) ecsiBootsummary densityplot(ecsiBoot, pattern = "beta") parallelplot(ecsiBoot, pattern = "beta", reflinesAt = c(0, 0.5), alpha = 0.3, type = "bca", main = "Path Coefficients\nof 500 bootstrap samples") ################################################### ### invertLVs, addPath, removePath ################################################### ECSI[["blocks"]]["Expectation"] invertLVs(model = ECSI, LVs = c("Expectation"))[["blocks"]]["Expectation"] ECSI[["D"]] addPath(model = ECSI, from = "Quality", to = "Loyalty")[["D"]] removePath(model = ECSI, from = "Image", to = c("Satisfaction", "Loyalty"))[["D"]] ################################################### ### sem ################################################### library("sem") semmodECSI <- plsm2sem(model = ECSI, fixedLoad = c(names(mobi)[grep("1", names(mobi))], "CUSCO"), fixedVarMV=TRUE, fixedVarLV=FALSE) ecsiSEM <- sem(model = semmodECSI, S = cor(mobi), N = nrow(mobi)) betaIndx <- grep("beta*", names(ecsiSEM$coeff)) cbind(ecsi$coefficients[names(ecsiSEM$coeff)[betaIndx], ], CBSEM = ecsiSEM$coeff[betaIndx]) detach("package:sem") ################################################### ### read.splsm ################################################### ptf <- system.file("SmartPLS", "workspace", "ecsi", "ECSI_Tenenhaus.splsm", package = "semPLS") ECSIimported <- read.splsm(file=ptf, order = "generic") for(i in names(ECSI)) print(all.equal(ECSI[i], ECSIimported[i]))