ch 01 - PLS SEM Intro

Page content

개요

  • 석사 학위 논문을 위해 작성하기 위해 만들었음
  • PLS SEM 모델링을 위한 R 패키지가 존재함
    • plspm: 2020년 5월 14일 R Cran에서 정식 패키지에서 내려감
      • 위 패키지는 원서 약 230페이지 되는 교재도 있음
      • 1차로 위 패키지를 고려했으나 5/14일 패키지가 내려간 이후 선택에서 제외시킴
  • 또한, SMART PLS라는 상용프로그램도 존재함
  • 특정 R semPLS와 위 상용 프로그램을 비교한 논문이 있었고, 다행히 두 프로그램의 결과값이 동일한 것으로 증명되었다.
    ref. Utilization of R Program for the Partial Least Square Model: Comparison of SmartPLS and R
  • 아직 확정지은 것은 아니지만, 향후 추가적인 논문을 진행한다면 위 2개의 패키지와 SMART PLS 상용 소프트웨어를 비교하는 논문도 괜찮을 것이라 생각함

교재

Sample Code

  • 패키지 로드
library("semPLS")
## Loading required package: lattice
  • Sample 데이터 불러오기
data("ECSIsm")
head(ECSIsm)
##      source        target        
## [1,] "Image"       "Expectation" 
## [2,] "Expectation" "Quality"     
## [3,] "Expectation" "Value"       
## [4,] "Quality"     "Value"       
## [5,] "Image"       "Satisfaction"
## [6,] "Expectation" "Satisfaction"
data("ECSImm")
head(ECSImm)
##      source        target 
## [1,] "Image"       "IMAG1"
## [2,] "Image"       "IMAG2"
## [3,] "Image"       "IMAG3"
## [4,] "Image"       "IMAG4"
## [5,] "Image"       "IMAG5"
## [6,] "Expectation" "CUEX1"
data("mobi")
head(mobi)
##   CUEX1 CUEX2 CUEX3 CUSA1 CUSA2 CUSA3 CUSCO CUSL1 CUSL2 CUSL3 IMAG1 IMAG2 IMAG3
## 1     7     7     6     6     4     7     7     6     5     6     7     5     5
## 2    10    10     9    10    10     8    10    10     2    10    10     9    10
## 3     7     7     7     8     7     7     6     6     2     7     8     7     6
## 4     7    10     5    10    10    10     5    10     4    10    10    10     5
## 5     8     7    10    10     8     8     5    10     3     8    10    10     5
## 6    10     9     7     8     7     7     8    10     3    10     8     9    10
##   IMAG4 IMAG5 PERQ1 PERQ2 PERQ3 PERQ4 PERQ5 PERQ6 PERQ7 PERV1 PERV2
## 1     5     4     7     6     4     7     6     5     5     2     3
## 2    10     9    10     9    10    10     9    10    10    10    10
## 3     4     7     7     8     5     7     8     7     7     7     7
## 4     5    10     8    10    10     8     4     5     8     5     5
## 5     8     9    10     9     8    10     9     9     8     6     6
## 6     8     9     9    10     9    10     8     9     9    10    10
  • 모형 적합
ECSI <- plsm(data = mobi, strucmod = ECSIsm, measuremod = ECSImm)
mvpairs(model = ECSI, data = mobi, LVs = "Expectation")

ecsi <- sempls(model = ECSI, data = mobi, wscheme = "centroid")
## All 250 observations are valid.
## Converged after 6 iterations.
## Tolerance: 1e-07
## Scheme: centroid
names(ecsi)
##  [1] "coefficients"      "path_coefficients" "outer_loadings"   
##  [4] "cross_loadings"    "total_effects"     "inner_weights"    
##  [7] "outer_weights"     "blocks"            "factor_scores"    
## [10] "data"              "scaled"            "model"            
## [13] "weighting_scheme"  "weights_evolution" "sum1"             
## [16] "pairwise"          "method"            "iterations"       
## [19] "convCrit"          "verbose"           "tolerance"        
## [22] "maxit"             "N"                 "incomplete"       
## [25] "Hanafi"
pathDiagram(ecsi, file = "ecsiStructure", full = FALSE, edge.labels = "both",
      output.type = "graphics", digits = 2, graphics.fmt = "png")
## Running  dot -Tpng -o ecsiStructure.png  ecsiStructure.dot

  • 중간에 dot 에러가 나면 Graphviz - Graph Visualization Software를 설치해야 한다.