Catatan: Pastikan file
StressLevelDataset.csvberada di folder yang sama dengan file.Rmdini sebelum di-knit.
Dataset dapat diunduh di: https://www.kaggle.com/datasets/rxnach/student-stress-factors-a-comprehensive-analysis
## anxiety_level self_esteem mental_health_history depression headache
## 1 14 20 0 11 2
## 2 15 8 1 15 5
## 3 12 18 1 14 2
## 4 16 12 1 15 4
## 5 16 28 0 7 2
## 6 20 13 1 21 3
## blood_pressure sleep_quality breathing_problem noise_level living_conditions
## 1 1 2 4 2 3
## 2 3 1 4 3 1
## 3 1 2 2 2 2
## 4 3 1 3 4 2
## 5 3 5 1 3 2
## 6 3 1 4 3 2
## safety basic_needs academic_performance study_load
## 1 3 2 3 2
## 2 2 2 1 4
## 3 3 2 2 3
## 4 2 2 2 4
## 5 4 3 4 3
## 6 2 1 2 5
## teacher_student_relationship future_career_concerns social_support
## 1 3 3 2
## 2 1 5 1
## 3 3 2 2
## 4 1 4 1
## 5 1 2 1
## 6 2 5 1
## peer_pressure extracurricular_activities bullying stress_level
## 1 3 3 2 1
## 2 4 5 5 2
## 3 3 2 2 1
## 4 4 4 5 2
## 5 5 0 5 1
## 6 4 4 5 2
## anxiety_level self_esteem
## 0 0
## mental_health_history depression
## 0 0
## headache blood_pressure
## 0 0
## sleep_quality breathing_problem
## 0 0
## noise_level living_conditions
## 0 0
## safety basic_needs
## 0 0
## academic_performance study_load
## 0 0
## teacher_student_relationship future_career_concerns
## 0 0
## social_support peer_pressure
## 0 0
## extracurricular_activities bullying
## 0 0
## stress_level
## 0
## anxiety_level self_esteem mental_health_history depression
## Min. : 0.00 Min. : 0.00 Min. :0.0000 Min. : 0.00
## 1st Qu.: 6.00 1st Qu.:11.00 1st Qu.:0.0000 1st Qu.: 6.00
## Median :11.00 Median :19.00 Median :0.0000 Median :12.00
## Mean :11.06 Mean :17.78 Mean :0.4927 Mean :12.56
## 3rd Qu.:16.00 3rd Qu.:26.00 3rd Qu.:1.0000 3rd Qu.:19.00
## Max. :21.00 Max. :30.00 Max. :1.0000 Max. :27.00
## headache blood_pressure sleep_quality breathing_problem
## Min. :0.000 Min. :1.000 Min. :0.00 Min. :0.000
## 1st Qu.:1.000 1st Qu.:1.000 1st Qu.:1.00 1st Qu.:2.000
## Median :3.000 Median :2.000 Median :2.50 Median :3.000
## Mean :2.508 Mean :2.182 Mean :2.66 Mean :2.754
## 3rd Qu.:3.000 3rd Qu.:3.000 3rd Qu.:4.00 3rd Qu.:4.000
## Max. :5.000 Max. :3.000 Max. :5.00 Max. :5.000
## noise_level living_conditions safety basic_needs
## Min. :0.000 Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:2.000 1st Qu.:2.000 1st Qu.:2.000 1st Qu.:2.000
## Median :3.000 Median :2.000 Median :2.000 Median :3.000
## Mean :2.649 Mean :2.518 Mean :2.737 Mean :2.773
## 3rd Qu.:3.000 3rd Qu.:3.000 3rd Qu.:4.000 3rd Qu.:4.000
## Max. :5.000 Max. :5.000 Max. :5.000 Max. :5.000
## academic_performance study_load teacher_student_relationship
## Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:2.000 1st Qu.:2.000 1st Qu.:2.000
## Median :2.000 Median :2.000 Median :2.000
## Mean :2.773 Mean :2.622 Mean :2.648
## 3rd Qu.:4.000 3rd Qu.:3.000 3rd Qu.:4.000
## Max. :5.000 Max. :5.000 Max. :5.000
## future_career_concerns social_support peer_pressure
## Min. :0.000 Min. :0.000 Min. :0.000
## 1st Qu.:1.000 1st Qu.:1.000 1st Qu.:2.000
## Median :2.000 Median :2.000 Median :2.000
## Mean :2.649 Mean :1.882 Mean :2.735
## 3rd Qu.:4.000 3rd Qu.:3.000 3rd Qu.:4.000
## Max. :5.000 Max. :3.000 Max. :5.000
## extracurricular_activities bullying stress_level
## Min. :0.000 Min. :0.000 Min. :0.0000
## 1st Qu.:2.000 1st Qu.:1.000 1st Qu.:0.0000
## Median :2.500 Median :3.000 Median :1.0000
## Mean :2.767 Mean :2.617 Mean :0.9964
## 3rd Qu.:4.000 3rd Qu.:4.000 3rd Qu.:2.0000
## Max. :5.000 Max. :5.000 Max. :2.0000
# correlation heatmap — berguna buat lihat mana yang saling berkaitan
cor_matrix <- cor(data)
corrplot(
cor_matrix,
method = "color",
tl.cex = 0.65,
mar = c(0, 0, 1, 0),
title = "Correlation Matrix - StressLevelDataset"
)Sebelum membangun model, dua indikator perlu di-reverse code karena arahnya berlawanan dengan konstruk latennya:
self_esteem → semakin tinggi
self-esteem, semakin rendah tekanan psikologis. Karena konstruk
Psychological_Factors merepresentasikan beban
psikologis, indikator ini harus dibalik.social_support → semakin tinggi
dukungan sosial, semakin rendah stres sosial. Karena konstruk
Social_Factors merepresentasikan stresor sosial,
indikator ini juga harus dibalik.# max self_esteem = 30, max social_support = 3 (sudah dicek dari data)
data$self_esteem_rev <- max(data$self_esteem) - data$self_esteem
data$social_support_rev <- max(data$social_support) - data$social_support
# cek sekilas hasilnya
head(data[, c("self_esteem", "self_esteem_rev", "social_support", "social_support_rev")])## self_esteem self_esteem_rev social_support social_support_rev
## 1 20 10 2 1
## 2 8 22 1 2
## 3 18 12 2 1
## 4 12 18 1 2
## 5 28 2 1 2
## 6 13 17 1 2
measurement_model <- constructs(
# Faktor Psikologis — semua indikator kini searah (semakin tinggi = semakin stres)
reflective(
"Psychological_Factors",
c("anxiety_level", "self_esteem_rev", "depression")
),
# Faktor Akademik
reflective(
"Academic_Factors",
c("study_load", "future_career_concerns")
),
# Faktor Sosial — social_support_rev sudah dibalik agar searah dengan peer_pressure & bullying
reflective(
"Social_Factors",
c("social_support_rev", "peer_pressure", "bullying")
),
# Stress Level — single item, CR dan AVE akan trivially = 1 (keterbatasan model)
reflective(
"Stress_Level",
single_item("stress_level")
)
)structural_model <- relationships(
paths(
from = c("Psychological_Factors", "Academic_Factors", "Social_Factors"),
to = "Stress_Level"
)
)pls_model <- estimate_pls(
data = data,
measurement_model = measurement_model,
structural_model = structural_model
)
summary(pls_model)##
## Results from package seminr (2.5.0)
##
## Path Coefficients:
## Stress_Level
## R^2 0.794
## AdjR^2 0.794
## Psychological_Factors 0.777
## Academic_Factors 0.310
## Social_Factors -0.199
##
## Reliability:
## alpha rhoA rhoC AVE
## Psychological_Factors 0.869 0.869 0.869 0.689
## Academic_Factors 0.731 0.744 0.736 0.583
## Social_Factors 0.801 0.809 0.804 0.579
## Stress_Level 1.000 1.000 1.000 1.000
##
## Alpha, rhoA, and rhoC should exceed 0.7 while AVE should exceed 0.5
## alpha rhoA rhoC AVE
## Psychological_Factors 0.869 0.869 0.869 0.689
## Academic_Factors 0.731 0.744 0.736 0.583
## Social_Factors 0.801 0.809 0.804 0.579
## Stress_Level 1.000 1.000 1.000 1.000
##
## Alpha, rhoA, and rhoC should exceed 0.7 while AVE should exceed 0.5
Interpretasi:
Stress_Level adalah single-item construct
sehingga CR dan AVE bernilai 1 secara trivial — ini adalah keterbatasan
model yang perlu disebutkan dalam laporan.## Psychological_Factors Academic_Factors Social_Factors
## anxiety_level 0.8235960 0.0000000 0.0000000
## self_esteem_rev 0.8452811 0.0000000 0.0000000
## depression 0.8208944 0.0000000 0.0000000
## study_load 0.0000000 0.7013837 0.0000000
## future_career_concerns 0.0000000 0.8213453 0.0000000
## social_support_rev 0.0000000 0.0000000 0.6943951
## peer_pressure 0.0000000 0.0000000 0.7582764
## bullying 0.0000000 0.0000000 0.8246733
## stress_level 0.0000000 0.0000000 0.0000000
## Stress_Level
## anxiety_level 0
## self_esteem_rev 0
## depression 0
## study_load 0
## future_career_concerns 0
## social_support_rev 0
## peer_pressure 0
## bullying 0
## stress_level 1
Interpretasi:
Indikator dianggap valid apabila outer loading >
0.7. Jika ada yang di bawah itu, pertimbangkan untuk
dikeluarkan dari konstruk.
## Psychological_Factors Academic_Factors Social_Factors
## Psychological_Factors 0.830 . .
## Academic_Factors 0.828 0.764 .
## Social_Factors 0.851 0.804 0.761
## Stress_Level 0.834 0.780 0.819
## Stress_Level
## Psychological_Factors .
## Academic_Factors .
## Social_Factors .
## Stress_Level 1.000
##
## FL Criteria table reports square root of AVE on the diagonal and construct correlations on the lower triangle.
Interpretasi:
Discriminant validity terpenuhi apabila setiap indikator memiliki
loading tertinggi pada konstruknya sendiri dibandingkan
konstruk lain (nilai diagonal > nilai off-diagonal pada baris yang
sama).
## Stress_Level :
## Psychological_Factors Academic_Factors Social_Factors
## 4.599 3.586 4.090
Interpretasi: VIF < 5 mengindikasikan tidak ada masalah multikolinearitas antar konstruk eksogen.
## Stress_Level
## Rsq 0.7943958
## AdjRsq 0.7938330
Interpretasi: Semakin mendekati 1, semakin besar
kemampuan konstruk eksogen menjelaskan variansi
Stress_Level. Nilai > 0.67 = kuat, 0.33–0.67 = moderat,
0.19–0.33 = lemah.
## [1] -0.06741771
## [1] -0.0270953
## [1] -0.005417874
Interpretasi: f² < 0.02 = tidak signifikan | 0.02–0.15 = kecil | 0.15–0.35 = sedang | > 0.35 = besar.
# nboot = 5000 sudah cukup untuk estimasi stabil
boot_model <- bootstrap_model(
seminr_model = pls_model,
nboot = 5000,
cores = 1,
seed = 123
)
summary(boot_model)##
## Results from Bootstrap resamples: 5000
##
## Bootstrapped Structural Paths:
## Original Est. Bootstrap Mean
## Psychological_Factors -> Stress_Level 0.777 0.142
## Academic_Factors -> Stress_Level 0.310 0.749
## Social_Factors -> Stress_Level -0.199 -0.008
## Bootstrap SD T Stat. 2.5% CI 97.5% CI
## Psychological_Factors -> Stress_Level 31.645 0.025 -7.440 7.332
## Academic_Factors -> Stress_Level 20.345 0.015 -4.142 5.471
## Social_Factors -> Stress_Level 27.875 -0.007 -7.645 7.657
## Bootstrap P Val
## Psychological_Factors -> Stress_Level 0.558
## Academic_Factors -> Stress_Level 0.530
## Social_Factors -> Stress_Level 0.914
##
## Bootstrapped Weights:
## Original Est. Bootstrap Mean
## anxiety_level -> Psychological_Factors 0.372 0.372
## self_esteem_rev -> Psychological_Factors 0.381 0.381
## depression -> Psychological_Factors 0.370 0.370
## study_load -> Academic_Factors 0.518 0.519
## future_career_concerns -> Academic_Factors 0.607 0.607
## social_support_rev -> Social_Factors 0.360 0.360
## peer_pressure -> Social_Factors 0.393 0.393
## bullying -> Social_Factors 0.427 0.427
## stress_level -> Stress_Level 1.000 1.000
## Bootstrap SD T Stat. 2.5% CI
## anxiety_level -> Psychological_Factors 0.007 54.338 0.359
## self_esteem_rev -> Psychological_Factors 0.007 52.631 0.368
## depression -> Psychological_Factors 0.006 58.908 0.358
## study_load -> Academic_Factors 0.012 43.263 0.495
## future_career_concerns -> Academic_Factors 0.011 53.922 0.585
## social_support_rev -> Social_Factors 0.010 37.727 0.341
## peer_pressure -> Social_Factors 0.009 42.771 0.375
## bullying -> Social_Factors 0.009 47.148 0.410
## stress_level -> Stress_Level 0.000 . 1.000
## 97.5% CI Bootstrap P Val
## anxiety_level -> Psychological_Factors 0.385 0.000
## self_esteem_rev -> Psychological_Factors 0.396 0.000
## depression -> Psychological_Factors 0.383 0.000
## study_load -> Academic_Factors 0.542 0.000
## future_career_concerns -> Academic_Factors 0.630 0.000
## social_support_rev -> Social_Factors 0.379 0.000
## peer_pressure -> Social_Factors 0.411 0.000
## bullying -> Social_Factors 0.446 0.000
## stress_level -> Stress_Level 1.000 0.000
##
## Bootstrapped Loadings:
## Original Est. Bootstrap Mean
## anxiety_level -> Psychological_Factors 0.824 0.824
## self_esteem_rev -> Psychological_Factors 0.845 0.845
## depression -> Psychological_Factors 0.821 0.821
## study_load -> Academic_Factors 0.701 0.702
## future_career_concerns -> Academic_Factors 0.821 0.821
## social_support_rev -> Social_Factors 0.694 0.695
## peer_pressure -> Social_Factors 0.758 0.758
## bullying -> Social_Factors 0.825 0.825
## stress_level -> Stress_Level 1.000 1.000
## Bootstrap SD T Stat. 2.5% CI
## anxiety_level -> Psychological_Factors 0.018 45.293 0.788
## self_esteem_rev -> Psychological_Factors 0.015 56.503 0.815
## depression -> Psychological_Factors 0.017 47.022 0.786
## study_load -> Academic_Factors 0.020 34.335 0.661
## future_career_concerns -> Academic_Factors 0.026 32.097 0.770
## social_support_rev -> Social_Factors 0.022 31.312 0.650
## peer_pressure -> Social_Factors 0.022 35.251 0.714
## bullying -> Social_Factors 0.020 42.195 0.785
## stress_level -> Stress_Level 0.000 . 1.000
## 97.5% CI Bootstrap P Val
## anxiety_level -> Psychological_Factors 0.859 0.000
## self_esteem_rev -> Psychological_Factors 0.873 0.000
## depression -> Psychological_Factors 0.854 0.000
## study_load -> Academic_Factors 0.741 0.000
## future_career_concerns -> Academic_Factors 0.870 0.000
## social_support_rev -> Social_Factors 0.736 0.000
## peer_pressure -> Social_Factors 0.799 0.000
## bullying -> Social_Factors 0.861 0.000
## stress_level -> Stress_Level 1.000 0.000
##
## Bootstrapped HTMT:
## Original Est. Bootstrap Mean
## Psychological_Factors -> Academic_Factors 1.032 1.032
## Psychological_Factors -> Social_Factors 1.020 1.021
## Psychological_Factors -> Stress_Level 0.895 0.895
## Academic_Factors -> Social_Factors 1.040 1.041
## Academic_Factors -> Stress_Level 0.907 0.908
## Social_Factors -> Stress_Level 0.914 0.914
## Bootstrap SD 2.5% CI 97.5% CI
## Psychological_Factors -> Academic_Factors 0.021 0.993 1.074
## Psychological_Factors -> Social_Factors 0.015 0.990 1.049
## Psychological_Factors -> Stress_Level 0.014 0.867 0.921
## Academic_Factors -> Social_Factors 0.025 0.991 1.091
## Academic_Factors -> Stress_Level 0.023 0.862 0.952
## Social_Factors -> Stress_Level 0.014 0.885 0.941
## Bootstrap P Val
## Psychological_Factors -> Academic_Factors 0.116
## Psychological_Factors -> Social_Factors 0.176
## Psychological_Factors -> Stress_Level 0.000
## Academic_Factors -> Social_Factors 0.106
## Academic_Factors -> Stress_Level 0.000
## Social_Factors -> Stress_Level 0.000
##
## Bootstrapped Total Paths:
## Original Est. Bootstrap Mean
## Psychological_Factors -> Stress_Level 0.777 0.142
## Academic_Factors -> Stress_Level 0.310 0.749
## Social_Factors -> Stress_Level -0.199 -0.008
## Bootstrap SD 2.5% CI 97.5% CI
## Psychological_Factors -> Stress_Level 31.645 -7.440 7.332
## Academic_Factors -> Stress_Level 20.345 -4.142 5.471
## Social_Factors -> Stress_Level 27.875 -7.645 7.657
Interpretasi:
Path coefficient dinyatakan signifikan apabila
p-value < 0.05 atau t-value >
1.96 (two-tailed, α = 5%).