Jumat, 11 Juli 2025

Analisis SEM CB dengan Rtsudio data Holtzwinerswine1939

SEM CB

SEM CB

Pendahuluan

Jika kita menyelidiki suatau hubungan dengan beberapa variabel kita bisa meneumukan hubungan tersebut ada yang signifikan dan ada juga yang tidak signifikan. Kita bisa menyimpulkan yang signifikan tersebut dari nilai probabilitasnya. Maka ada suatau metode yang canggih dengan mencari pengaruh beberapa variabel yang banyak. Salah satu alternative untuk menyelidiki hubungan banyak variabel atau multivariable adalah SEM CB atau Structural Equation Model Covariance Based. Hal ini adalah suatau metode yang mencari hubungan dengan didasarkan oleh terori yang sudah ada maka dengan begitu harus ada teori yang sudah menudukungnya. Kalau demikian maka ia hanya untuk menmepatkan penelitian yang sudah ada untuk di lakukan pada subyek penelitian lain dalam hal ini sample yang berbeda. Tentu kita tidak mau untuk menggunakan data yang sudah diteliti dengan metode ini kembali. SEM CB : Metode analisis yang disuruh untuk menguji hubungan atau variabel dua variabel yang terukur dalam modal struktural. Dalam metode ini mempelakari hubungan yang kompleks dan simultan. Hubungan yang komplkes ini bisa diartikan rumit karena banyak sekali variabel yang menunjukkan hubungan yang tidak mudah untuk diuraikan. Sementara model struktural berarti adalah suatu model yang banyak dalam konstruk satu bangunan sistem.

Langkah SEM CB dengan Rstudio

Melakukan persiapan data dalam hal ini dataset yang ada di package lavaan kita panggil dulu (call) package baru kita dapatkan data Holzwinger1939

library(lavaan)
This is lavaan 0.6-19
lavaan is FREE software! Please report any bugs.
head (HolzingerSwineford1939)
  id sex ageyr agemo  school grade       x1   x2    x3       x4   x5        x6
1  1   1    13     1 Pasteur     7 3.333333 7.75 0.375 2.333333 5.75 1.2857143
2  2   2    13     7 Pasteur     7 5.333333 5.25 2.125 1.666667 3.00 1.2857143
3  3   2    13     1 Pasteur     7 4.500000 5.25 1.875 1.000000 1.75 0.4285714
4  4   1    13     2 Pasteur     7 5.333333 7.75 3.000 2.666667 4.50 2.4285714
5  5   2    12     2 Pasteur     7 4.833333 4.75 0.875 2.666667 4.00 2.5714286
6  6   2    14     1 Pasteur     7 5.333333 5.00 2.250 1.000000 3.00 0.8571429
        x7   x8       x9
1 3.391304 5.75 6.361111
2 3.782609 6.25 7.916667
3 3.260870 3.90 4.416667
4 3.000000 5.30 4.861111
5 3.695652 6.30 5.916667
6 4.347826 6.65 7.500000
#membuat model 
modelhol <- ' visual  =~ x1 + x2 + x3
            textual =~ x4 + x5 + x6
            speed   =~ x7 + x8 + x9 '

Kita membuat model dalam tiag kelompok yakni visual yang teridir dari x1,x2, dan x3 , textual yang terdiri dari x4,x5 dan x 6 sedangkan speed adalah x7, x8 dan x9.

Setelah kita mau mmebuat model maka kita bisa menampilkan bagiaman kita menyelidiki persamaan struktural tersebut

#Membuat model dari cfa data Holziwinger
fit39 <- cfa(modelhol, data = HolzingerSwineford1939)
#Melihat hasil dari model 
summary(fit39, fit.measures = TRUE, standardized = TRUE, rsquare = TRUE)
lavaan 0.6-19 ended normally after 35 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                        21

  Number of observations                           301

Model Test User Model:
                                                      
  Test statistic                                85.306
  Degrees of freedom                                24
  P-value (Chi-square)                           0.000

Model Test Baseline Model:

  Test statistic                               918.852
  Degrees of freedom                                36
  P-value                                        0.000

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    0.931
  Tucker-Lewis Index (TLI)                       0.896

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)              -3737.745
  Loglikelihood unrestricted model (H1)      -3695.092
                                                      
  Akaike (AIC)                                7517.490
  Bayesian (BIC)                              7595.339
  Sample-size adjusted Bayesian (SABIC)       7528.739

Root Mean Square Error of Approximation:

  RMSEA                                          0.092
  90 Percent confidence interval - lower         0.071
  90 Percent confidence interval - upper         0.114
  P-value H_0: RMSEA <= 0.050                    0.001
  P-value H_0: RMSEA >= 0.080                    0.840

Standardized Root Mean Square Residual:

  SRMR                                           0.065

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Latent Variables:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  visual =~                                                             
    x1                1.000                               0.900    0.772
    x2                0.554    0.100    5.554    0.000    0.498    0.424
    x3                0.729    0.109    6.685    0.000    0.656    0.581
  textual =~                                                            
    x4                1.000                               0.990    0.852
    x5                1.113    0.065   17.014    0.000    1.102    0.855
    x6                0.926    0.055   16.703    0.000    0.917    0.838
  speed =~                                                              
    x7                1.000                               0.619    0.570
    x8                1.180    0.165    7.152    0.000    0.731    0.723
    x9                1.082    0.151    7.155    0.000    0.670    0.665

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  visual ~~                                                             
    textual           0.408    0.074    5.552    0.000    0.459    0.459
    speed             0.262    0.056    4.660    0.000    0.471    0.471
  textual ~~                                                            
    speed             0.173    0.049    3.518    0.000    0.283    0.283

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
   .x1                0.549    0.114    4.833    0.000    0.549    0.404
   .x2                1.134    0.102   11.146    0.000    1.134    0.821
   .x3                0.844    0.091    9.317    0.000    0.844    0.662
   .x4                0.371    0.048    7.779    0.000    0.371    0.275
   .x5                0.446    0.058    7.642    0.000    0.446    0.269
   .x6                0.356    0.043    8.277    0.000    0.356    0.298
   .x7                0.799    0.081    9.823    0.000    0.799    0.676
   .x8                0.488    0.074    6.573    0.000    0.488    0.477
   .x9                0.566    0.071    8.003    0.000    0.566    0.558
    visual            0.809    0.145    5.564    0.000    1.000    1.000
    textual           0.979    0.112    8.737    0.000    1.000    1.000
    speed             0.384    0.086    4.451    0.000    1.000    1.000

R-Square:
                   Estimate
    x1                0.596
    x2                0.179
    x3                0.338
    x4                0.725
    x5                0.731
    x6                0.702
    x7                0.324
    x8                0.523
    x9                0.442

Kita bisa melihat dari summary tersebut beberapa hasil seperti nilai r kuadrat atau nilai R Squarenya. Semakin besar R Squarenya maka itu menunjukkan nilai baik. kemudian kita mencari nilai RSMEA yang menunjukkan tidak baik nilainya jika lebih besar sepeti 0,1 saja sudah menunjukkan tidak baik.

Kemudian kita akan bisa menampilkan beberapa parameter estimasi dan modified indices. Kita melihat nilai Chi Square yang sekitar 85,306 menunjukkan nilai p value adalah 0,00 artinya nilanya signifikan. UNtuk MOdel TEst baseline menunjukkan nilai 918,852 dan menunjukkan p value yakni sekitar 0,00 atau nilainya signifikan. Dalam model summary kita melihat nilai CFI 0,931 sedangan TLI 0,896. dengan nilai yang kampir mendekati satu ini maka hampir sempurna atau bagus,

summary(fit39, fit.measures = TRUE, standardized = TRUE, rsquare = TRUE)
lavaan 0.6-19 ended normally after 35 iterations

  Estimator                                         ML
  Optimization method                           NLMINB
  Number of model parameters                        21

  Number of observations                           301

Model Test User Model:
                                                      
  Test statistic                                85.306
  Degrees of freedom                                24
  P-value (Chi-square)                           0.000

Model Test Baseline Model:

  Test statistic                               918.852
  Degrees of freedom                                36
  P-value                                        0.000

User Model versus Baseline Model:

  Comparative Fit Index (CFI)                    0.931
  Tucker-Lewis Index (TLI)                       0.896

Loglikelihood and Information Criteria:

  Loglikelihood user model (H0)              -3737.745
  Loglikelihood unrestricted model (H1)      -3695.092
                                                      
  Akaike (AIC)                                7517.490
  Bayesian (BIC)                              7595.339
  Sample-size adjusted Bayesian (SABIC)       7528.739

Root Mean Square Error of Approximation:

  RMSEA                                          0.092
  90 Percent confidence interval - lower         0.071
  90 Percent confidence interval - upper         0.114
  P-value H_0: RMSEA <= 0.050                    0.001
  P-value H_0: RMSEA >= 0.080                    0.840

Standardized Root Mean Square Residual:

  SRMR                                           0.065

Parameter Estimates:

  Standard errors                             Standard
  Information                                 Expected
  Information saturated (h1) model          Structured

Latent Variables:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  visual =~                                                             
    x1                1.000                               0.900    0.772
    x2                0.554    0.100    5.554    0.000    0.498    0.424
    x3                0.729    0.109    6.685    0.000    0.656    0.581
  textual =~                                                            
    x4                1.000                               0.990    0.852
    x5                1.113    0.065   17.014    0.000    1.102    0.855
    x6                0.926    0.055   16.703    0.000    0.917    0.838
  speed =~                                                              
    x7                1.000                               0.619    0.570
    x8                1.180    0.165    7.152    0.000    0.731    0.723
    x9                1.082    0.151    7.155    0.000    0.670    0.665

Covariances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
  visual ~~                                                             
    textual           0.408    0.074    5.552    0.000    0.459    0.459
    speed             0.262    0.056    4.660    0.000    0.471    0.471
  textual ~~                                                            
    speed             0.173    0.049    3.518    0.000    0.283    0.283

Variances:
                   Estimate  Std.Err  z-value  P(>|z|)   Std.lv  Std.all
   .x1                0.549    0.114    4.833    0.000    0.549    0.404
   .x2                1.134    0.102   11.146    0.000    1.134    0.821
   .x3                0.844    0.091    9.317    0.000    0.844    0.662
   .x4                0.371    0.048    7.779    0.000    0.371    0.275
   .x5                0.446    0.058    7.642    0.000    0.446    0.269
   .x6                0.356    0.043    8.277    0.000    0.356    0.298
   .x7                0.799    0.081    9.823    0.000    0.799    0.676
   .x8                0.488    0.074    6.573    0.000    0.488    0.477
   .x9                0.566    0.071    8.003    0.000    0.566    0.558
    visual            0.809    0.145    5.564    0.000    1.000    1.000
    textual           0.979    0.112    8.737    0.000    1.000    1.000
    speed             0.384    0.086    4.451    0.000    1.000    1.000

R-Square:
                   Estimate
    x1                0.596
    x2                0.179
    x3                0.338
    x4                0.725
    x5                0.731
    x6                0.702
    x7                0.324
    x8                0.523
    x9                0.442
parameterEstimates(fit39, standardized = TRUE)
       lhs op     rhs   est    se      z pvalue ci.lower ci.upper std.lv
1   visual =~      x1 1.000 0.000     NA     NA    1.000    1.000  0.900
2   visual =~      x2 0.554 0.100  5.554      0    0.358    0.749  0.498
3   visual =~      x3 0.729 0.109  6.685      0    0.516    0.943  0.656
4  textual =~      x4 1.000 0.000     NA     NA    1.000    1.000  0.990
5  textual =~      x5 1.113 0.065 17.014      0    0.985    1.241  1.102
6  textual =~      x6 0.926 0.055 16.703      0    0.817    1.035  0.917
7    speed =~      x7 1.000 0.000     NA     NA    1.000    1.000  0.619
8    speed =~      x8 1.180 0.165  7.152      0    0.857    1.503  0.731
9    speed =~      x9 1.082 0.151  7.155      0    0.785    1.378  0.670
10      x1 ~~      x1 0.549 0.114  4.833      0    0.326    0.772  0.549
11      x2 ~~      x2 1.134 0.102 11.146      0    0.934    1.333  1.134
12      x3 ~~      x3 0.844 0.091  9.317      0    0.667    1.022  0.844
13      x4 ~~      x4 0.371 0.048  7.779      0    0.278    0.465  0.371
14      x5 ~~      x5 0.446 0.058  7.642      0    0.332    0.561  0.446
15      x6 ~~      x6 0.356 0.043  8.277      0    0.272    0.441  0.356
16      x7 ~~      x7 0.799 0.081  9.823      0    0.640    0.959  0.799
17      x8 ~~      x8 0.488 0.074  6.573      0    0.342    0.633  0.488
18      x9 ~~      x9 0.566 0.071  8.003      0    0.427    0.705  0.566
19  visual ~~  visual 0.809 0.145  5.564      0    0.524    1.094  1.000
20 textual ~~ textual 0.979 0.112  8.737      0    0.760    1.199  1.000
21   speed ~~   speed 0.384 0.086  4.451      0    0.215    0.553  1.000
22  visual ~~ textual 0.408 0.074  5.552      0    0.264    0.552  0.459
23  visual ~~   speed 0.262 0.056  4.660      0    0.152    0.373  0.471
24 textual ~~   speed 0.173 0.049  3.518      0    0.077    0.270  0.283
   std.all
1    0.772
2    0.424
3    0.581
4    0.852
5    0.855
6    0.838
7    0.570
8    0.723
9    0.665
10   0.404
11   0.821
12   0.662
13   0.275
14   0.269
15   0.298
16   0.676
17   0.477
18   0.558
19   1.000
20   1.000
21   1.000
22   0.459
23   0.471
24   0.283
inspect(fit39, what = "std")  # menampilkan standardized loading, varians, dsb
$lambda
   visual textul speed
x1  0.772  0.000 0.000
x2  0.424  0.000 0.000
x3  0.581  0.000 0.000
x4  0.000  0.852 0.000
x5  0.000  0.855 0.000
x6  0.000  0.838 0.000
x7  0.000  0.000 0.570
x8  0.000  0.000 0.723
x9  0.000  0.000 0.665

$theta
      x1    x2    x3    x4    x5    x6    x7    x8    x9
x1 0.404                                                
x2 0.000 0.821                                          
x3 0.000 0.000 0.662                                    
x4 0.000 0.000 0.000 0.275                              
x5 0.000 0.000 0.000 0.000 0.269                        
x6 0.000 0.000 0.000 0.000 0.000 0.298                  
x7 0.000 0.000 0.000 0.000 0.000 0.000 0.676            
x8 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.477      
x9 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.558

$psi
        visual textul speed
visual   1.000             
textual  0.459  1.000      
speed    0.471  0.283 1.000
modindices(fit39, sort = TRUE, minimum.value = 10)
      lhs op rhs     mi    epc sepc.lv sepc.all sepc.nox
30 visual =~  x9 36.411  0.577   0.519    0.515    0.515
76     x7 ~~  x8 34.145  0.536   0.536    0.859    0.859
28 visual =~  x7 18.631 -0.422  -0.380   -0.349   -0.349
78     x8 ~~  x9 14.946 -0.423  -0.423   -0.805   -0.805

Setelah itu kita bisa melihat dari grafik tampilan namun kita harus call dulu package semPLot.

Dari hasil grafik ini ketika kita menunjukan hubungan beberapa variabel itu. Dalam variabel estimates kita melihat kalau memang menunjukkan nilai signifikan. memang ada nilai NA atau nilai p juga menunjukkan NA. Hal ini menunjukkan tidak masalah sebab yang akan kita lihat adalah variabel yang dibawahnya. pada bagian variabel yang NA karena ia menjadi acuan atau standarnya.

library(semPlot)
semPaths(fit39,
         what = "std",        # tampilkan loading terstandar
         edge.label.cex = 0.8,# ukuran teks angka di garis
         layout = "tree",     # layout visual model
         sizeMan = 6,         # ukuran indikator (kotak)
         sizeLat = 8,         # ukuran konstruk (oval)
         nCharNodes = 0,      # jangan potong nama variabel
         residuals = FALSE)   # sembunyikan residual

PAda grafik kita diperlihatkan ada faktor laten dalam hal ini Visual, textual dan juga Speed. semuanya adayau ketiganya mempunyai hubunganwalaupun memang cukup kecil yakni tidak ada yang lebih dari 0,5. nilai hubungan yang tertinggi adalah visual dengan speed yang nilainya 0,47 kemudian visual dengan text hanya selisih sedikit sekali dari hubungan yang tertinggi yakni 0,46 sedangnkan hubungan text dengan speed kecil sekali yakni 0,28. Pada bagian visual hubungan yang terbesar adalah dengan x1 sekitar 0,77 sedangkan pada tekstual hampir hubungan dengan variabel kosntruknya adalah besar baik X4 dengan nilai 0,85, sedangkan X5 0,86 dan X6 yakni 0,84 sedangkan hubungan yang terendah antara variabel laten dengan kosntruknya adalah speed yang hanya 0,72 dengan variabel x8.

Tidak ada komentar:

Posting Komentar

SEM PLS with moderation using seminr package

semplscorp semplscorp SEM PLS Structural Equation Model Partial Least...