Pengantar Modul dan Karakteristik Data
Modul ini memberikan panduan praktis analisis struktural menggunakan
pendekatan SEM-PLS (Partial Least Squares) dengan Indikator Formatif
(Composite) melalui library seminr di R. Analisis ini menggunakan
dataset asli mahasiswa untuk melihat bagaimana faktor demografi dan
perilaku belajar memengaruhi hasil akademik akhir.
Spesifikasi Variabel Laten dan Indikator:
1. Fasilitas & Demografi (X1): Diukur melalui variabel age dan
internet_access.
3. Hasil Belajar (Y): Diukur melalui variabel previous_score dan
final_score.
Load dan Preprocessing Dataset
library(tidyverse)
library(seminr)
# 1. Membaca file dataset asli dengan separator titik koma (;)
data_target <- read.csv("student_performance.csv", sep = ";", stringsAsFactors = FALSE)
# 2. Pembersihan data dan transformasi biner
data_bersih_murni <- data_target %>%
mutate(
# PERBAIKAN: Menggunakan operator %in% yang benar
internet_access = ifelse(internet_access %in% c("Yes", "yes", "Y"), 1, 0),
extracurricular = ifelse(extracurricular %in% c("Yes", "yes", "Y"), 1, 0),
# Memastikan semua indikator numerik terbaca sebagai numeric
age = as.numeric(age),
study_hours_per_week = as.numeric(study_hours_per_week),
attendance_rate = as.numeric(attendance_rate),
previous_score = as.numeric(previous_score),
final_score = as.numeric(final_score)
) %>%
drop_na()
# Menampilkan 5 baris data teratas yang siap dianalisis
head(data_bersih_murni, 5)
## student_id gender age study_hours_per_week attendance_rate parent_education
## 1 STU0001 Male 15 25 63.8 Bachelor
## 2 STU0002 Female 15 2 54.7 Bachelor
## 3 STU0003 Female 19 10 90.5 High School
## 4 STU0004 Male 16 26 66.8 High School
## 5 STU0005 Female 15 25 73.0 High School
## internet_access extracurricular previous_score final_score passed
## 1 1 1 41 67 Yes
## 2 1 1 83 28 No
## 3 1 0 73 49 No
## 4 0 1 75 70 Yes
## 5 0 1 67 77 Yes
Spesifikasi Model SEM-PLS
B. Model Struktural (Inner Model)
model_struktural <- relationships(
paths(from = "Fasilitas_Demografi", to = "Perilaku_Belajar"),
paths(from = c("Fasilitas_Demografi", "Perilaku_Belajar"), to = "Hasil_Belajar")
)
Estimasi Model dan Bootstrapping
Estimasi Model PLS Dasar
# Estimasi model murni tanpa bootstrap untuk kestabilan dokumen HTML
pls_model <- estimate_pls(
data = data_bersih_murni,
measurement_model = model_pengukuran,
structural_model = model_struktural
)
# Membuat ringkasan objek secara aman
summary_simple <- summary(pls_model)
Evaluasi Hasil dan Interpretasi
2. Evaluasi Inner Model (Model Struktural & Uji Hipotesis)
A. Uji Hubungan Jalur Struktural
Hubungan dinyatakan signifikan apabila nilai T Stat > 1.96 dan P
Val < 0.05.
pls_model$path_coefficients
## NULL
B. Nilai Ukuran Kebaikan Model (R-Square & f-Square)
cat("--- Nilai R-Square Model ---\n")
## --- Nilai R-Square Model ---
pls_model$rSquared
## Perilaku_Belajar Hasil_Belajar
## Rsq 0.005827186 0.7403295
## AdjRsq 0.003830855 0.7392845
cat("\n--- Nilai f-Square (Effect Size) ---\n")
##
## --- Nilai f-Square (Effect Size) ---
# Mengambil fSquared langsung dari objek summary tanpa re-regresi manual
summary_simple$fSquared
## NULL
Visualisasi Model
# Menggunakan fungsi bawaan seminr yang dijamin bebas dari error dimensi matriks
plot(pls_model)