Nama Anggota Kelompok: - Erma Shafira Zulfianti (23031554012) - Alin Tifana Safitri (23031554019) - Jesika Trisyanda (23031554228)

Kelas : Analisis Multivariat 2023E UNIVERSITAS NEGERI SURABAYA

library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.4.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats   1.0.0     ✔ readr     2.1.5
## ✔ ggplot2   3.5.1     ✔ stringr   1.5.1
## ✔ lubridate 1.9.4     ✔ tibble    3.2.1
## ✔ purrr     1.0.4     ✔ tidyr     1.3.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(nnet)
## Warning: package 'nnet' was built under R version 4.4.3
library(broom)
## Warning: package 'broom' was built under R version 4.4.3
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.4.3
## 
## Attaching package: 'kableExtra'
## 
## The following object is masked from 'package:dplyr':
## 
##     group_rows
library(marginaleffects)
## Warning: package 'marginaleffects' was built under R version 4.4.3

1. Deskripsi Dataset

Dataset ini merupakan data siswa yang bertujuan untuk menganalisis pengaruh berbagai faktor sosial dan akademik terhadap hasil akhir ujian, yang ditunjukkan oleh variabel G3. Dataset ini mencakup informasi identitas dan demografi siswa seperti sekolah asal, jenis kelamin, usia, tempat tinggal, ukuran keluarga, dan status orang tua. Selain itu, terdapat data latar belakang orang tua yang mencakup tingkat pendidikan dan jenis pekerjaan ibu serta ayah, termasuk siapa yang menjadi wali siswa. Faktor akademik juga dicatat, seperti alasan memilih sekolah, waktu tempuh ke sekolah, waktu belajar mingguan, dan jumlah kegagalan akademik sebelumnya. Data ini juga merekam dukungan sosial dan aktivitas siswa, seperti dukungan tambahan dari sekolah dan keluarga, keterlibatan dalam les tambahan dan kegiatan ekstrakurikuler, riwayat mengikuti taman kanak-kanak, keinginan melanjutkan ke pendidikan tinggi, akses internet di rumah, dan status hubungan romantis. Selanjutnya, terdapat data terkait kehidupan sosial dan keseharian siswa, seperti kualitas hubungan keluarga, waktu luang, frekuensi keluar bersama teman, konsumsi alkohol pada hari kerja dan akhir pekan, kondisi kesehatan, serta jumlah ketidakhadiran. Terakhir, nilai akademik siswa dicatat dalam tiga tahap, yaitu G1 (nilai awal), G2 (nilai pertengahan), dan G3 (nilai akhir).

2. Input Data

data <- read.csv("C:/Users/FIRA/Downloads/student-mat.csv", sep = ";")

data

data berisikan 395 baris dan 33 kolom

3. Mengubah nilai akhir G3 menjadi kategori (tanpa urutan)

data <- data %>%
  mutate(
    grade_cat = cut(G3,
                    breaks = c(-1, 9, 14, 20),
                    labels = c("low", "medium", "high"),
                    ordered_result = FALSE),
    sex = factor(sex, labels = c("Female", "Male")),
    school = factor(school, labels = c("GP", "MS")),
    address = factor(address, labels = c("Urban", "Rural"))
  )

Data yang telah diproses menunjukkan bahwa variabel G3 (nilai akhir siswa) telah dikategorikan menjadi tiga kelas: rendah, sedang, dan tinggi, melalui fungsi cut(). Lalu, variabel sex, school, dan address telah diubah menjadi faktor dengan label yang lebih deskriptif, sehingga memudahkan interpretasi dan memudahkan mengidentifikasi pengaruh faktor sosial dan akademik terhadap performa akhir siswa. Langkah selanjutnya dapat berupa eksplorasi distribusi kategori grade_cat dan pembangunan model prediktif untuk mengetahui variabel mana yang paling berpengaruh terhadap pencapaian nilai tinggi atau rendah.

4. Membuat model dengan satu prediktor

# ----- Model Dasar: hanya sex -----
fit_basic <- multinom(grade_cat ~ sex, data = data)
## # weights:  9 (4 variable)
## initial  value 433.951854 
## final  value 404.434907 
## converged
summary(fit_basic)
## Call:
## multinom(formula = grade_cat ~ sex, data = data)
## 
## Coefficients:
##        (Intercept)   sexMale
## medium   0.2976329 0.2058909
## high    -0.8517545 0.5579921
## 
## Std. Errors:
##        (Intercept)   sexMale
## medium   0.1524281 0.2289217
## high     0.2111478 0.2952210
## 
## Residual Deviance: 808.8698 
## AIC: 816.8698
# Tampilkan hasil model dasar
tidy(fit_basic, conf.int = TRUE) %>%
  kable() %>%
  kable_styling("basic", full_width = FALSE)
y.level term estimate std.error statistic p.value conf.low conf.high
medium (Intercept) 0.2976329 0.1524281 1.9526122 0.0508656 -0.0011206 0.5963864
medium sexMale 0.2058909 0.2289217 0.8993945 0.3684426 -0.2427873 0.6545691
high (Intercept) -0.8517545 0.2111478 -4.0339251 0.0000549 -1.2655966 -0.4379123
high sexMale 0.5579921 0.2952210 1.8900829 0.0587469 -0.0206304 1.1366146

Pemodelan dasar (fit_basic <- multinom(grade_cat ~ sex, data = data)) dilakukan untuk menguji apakah jenis kelamin secara signifikan memengaruhi kategori hasil akhir ujian siswa (grade_cat).

Hasil model dasar menunjukkan bahwa jenis kelamin (sex) belum memberikan pengaruh yang signifikan secara statistik terhadap kategori nilai akhir (grade_cat) siswa, baik untuk kategori medium maupun high, jika dibandingkan dengan kategori referensi yaitu low. Pada kategori medium, koefisien untuk sexMale adalah 0.206 dengan p-value sebesar 0.368, yang berarti tidak signifikan (p > 0.05), sehingga tidak ada cukup bukti bahwa laki-laki memiliki peluang yang berbeda secara signifikan untuk masuk kategori nilai sedang dibanding perempuan. Untuk kategori high, koefisien sexMale lebih besar yaitu 0.558, namun juga belum signifikan secara statistik (p = 0.058), meskipun mendekati ambang 0.05, dan interval kepercayaannya masih mencakup nol. Artinya, meskipun terdapat kecenderungan bahwa siswa laki-laki sedikit lebih mungkin berada di kategori nilai tinggi, hasil ini belum dapat dianggap cukup kuat secara statistik. Oleh karena itu, variabel sex saja belum cukup menjelaskan variasi nilai akhir siswa.

5. Pemodelan Lengkap Multivariat

# ----- Model Lengkap: beberapa variabel penting -----
fit_full <- multinom(grade_cat ~ sex + studytime + failures + absences + address, data = data)
## # weights:  21 (12 variable)
## initial  value 433.951854 
## iter  10 value 376.448632
## iter  20 value 372.264835
## final  value 372.264825 
## converged
summary(fit_full)
## Call:
## multinom(formula = grade_cat ~ sex + studytime + failures + absences + 
##     address, data = data)
## 
## Coefficients:
##        (Intercept)   sexMale  studytime   failures     absences addressRural
## medium   0.4396466 0.3478136 0.07786327 -0.8209176 -0.008813713   0.02806855
## high    -1.3516476 0.8386809 0.27418237 -1.9500030 -0.058405962   0.62913716
## 
## Std. Errors:
##        (Intercept)   sexMale studytime  failures   absences addressRural
## medium   0.4808593 0.2580890 0.1576918 0.1716351 0.01359347    0.2794660
## high     0.6505652 0.3320303 0.1943642 0.5693077 0.02943281    0.4194795
## 
## Residual Deviance: 744.5296 
## AIC: 768.5296
tidy(fit_full, conf.int = TRUE, exponentiate = TRUE) %>%
  kable() %>%
  kable_styling("basic", full_width = FALSE)
y.level term estimate std.error statistic p.value conf.low conf.high
medium (Intercept) 1.5521587 0.4808593 0.9142937 0.3605625 0.6048225 3.9833117
medium sexMale 1.4159682 0.2580890 1.3476497 0.1777711 0.8538228 2.3482226
medium studytime 1.0809748 0.1576918 0.4937687 0.6214695 0.7935752 1.4724585
medium failures 0.4400277 0.1716351 -4.7829244 0.0000017 0.3143287 0.6159934
medium absences 0.9912250 0.0135935 -0.6483782 0.5167403 0.9651648 1.0179889
medium addressRural 1.0284662 0.2794660 0.1004364 0.9199979 0.5947139 1.7785739
high (Intercept) 0.2588135 0.6505652 -2.0776511 0.0377415 0.0723144 0.9262944
high sexMale 2.3133135 0.3320303 2.5259167 0.0115397 1.2067291 4.4346484
high studytime 1.3154547 0.1943642 1.4106627 0.1583441 0.8987373 1.9253914
high failures 0.1422736 0.5693077 -3.4252178 0.0006143 0.0466153 0.4342303
high absences 0.9432669 0.0294328 -1.9843829 0.0472132 0.8903922 0.9992815
high addressRural 1.8759912 0.4194795 1.4998044 0.1336651 0.8244593 4.2686679

Pada tahap ini, dilakukan pemodelan regresi logistik multinomial dengan melibatkan beberapa variabel prediktor penting secara simultan, yaitu sex, studytime, failures, absences, dan address. Tujuan dari tahap ini adalah untuk mengidentifikasi pengaruh gabungan dari faktor sosial dan akademik terhadap kategori nilai akhir siswa (grade_cat), serta untuk membandingkan kontribusi relatif masing-masing variabel dalam memprediksi kategori medium dan high terhadap referensi low.

Berdasarkan hasil estimasi, ditemukan bahwa variabel failures memiliki pengaruh yang signifikan secara statistik untuk kedua kategori. Pada kategori medium, koefisien sebesar 0.44 dengan p-value < 0.001 menunjukkan bahwa semakin sedikit kegagalan sebelumnya, semakin besar kemungkinan siswa berada di kategori nilai sedang dibanding rendah. Efek yang sama juga terlihat pada kategori high, dengan p-value yang juga sangat signifikan (p < 0.001), menunjukkan bahwa kegagalan akademik sebelumnya merupakan prediktor kuat terhadap pencapaian nilai akhir siswa.

Variabel sex mulai menunjukkan pengaruh yang signifikan dalam kategori high, dimana siswa laki-laki memiliki kemungkinan lebih besar (estimate = 2.31, p-value = 0.011) untuk mencapai nilai tinggi dibanding perempuan, setelah mengendalikan variabel lain. Demikian juga, meskipun studytime memiliki koefisien positif untuk kategori high (1.31), namun efeknya belum signifikan (p-value = 0.158), menunjukkan bahwa waktu belajar saja belum cukup kuat secara statistik memengaruhi kemungkinan mendapatkan nilai tinggi.

Sementara itu, variabel absences dan address tidak menunjukkan pengaruh yang signifikan secara statistik pada kategori medium, yang ditunjukkan oleh p-value yang tinggi (> 0.5 dan > 0.9), sehingga kontribusinya dalam memprediksi nilai akhir relatif lemah dalam model ini. Secara keseluruhan, model lengkap ini memberikan wawasan bahwa jumlah kegagalan akademik dan jenis kelamin merupakan faktor yang paling menonjol dalam memengaruhi pencapaian nilai akhir siswa, khususnya untuk kategori nilai tinggi. ## 6. Pembangunan Model Multinomial Regresi

# ----- Model Semua Variabel (kecuali G1, G2, G3) -----
fit_all <- multinom(grade_cat ~ . -G1 -G2 -G3, data = data)
## # weights:  123 (80 variable)
## initial  value 433.951854 
## iter  10 value 355.253321
## iter  20 value 323.473224
## iter  30 value 317.883778
## iter  40 value 316.495040
## iter  50 value 316.236018
## iter  60 value 316.192671
## iter  70 value 316.184498
## iter  80 value 316.169450
## iter  90 value 316.165421
## final  value 316.165362 
## converged
summary(fit_all)
## Call:
## multinom(formula = grade_cat ~ . - G1 - G2 - G3, data = data)
## 
## Coefficients:
##        (Intercept)   schoolMS   sexMale        age addressRural famsizeLE3
## medium    4.250341 0.20687461 0.3831260 -0.2256608   0.18350266  0.1044318
## high     -7.966052 0.08383013 0.8069778 -0.3229996   0.08232915  0.3951375
##          PstatusT        Medu       Fedu Mjobhealth  Mjobother Mjobservices
## medium -0.4320572 -0.01387367  0.1369224  0.3667815 -0.3272060    0.2650724
## high   -0.6412588  0.58777167 -0.1476036  0.3217906 -0.9839037    0.6020084
##        Mjobteacher  Fjobhealth  Fjobother Fjobservices Fjobteacher reasonhome
## medium  -0.7200211 -0.19483623  0.3226179  -0.06545285   0.3642355  0.3312605
## high    -1.6455504  0.05759843 -0.4309942  -0.48388098   1.5533422  0.5042913
##        reasonother reasonreputation guardianmother guardianother  traveltime
## medium   0.5443544        0.5089922    -0.17070500   -0.07417966  0.05028853
## high     0.7039700        0.4467939     0.08940544    0.79672415 -0.06864523
##        studytime   failures schoolsupyes  famsupyes    paidyes activitiesyes
## medium 0.1909712 -0.7793304   -0.6034382 -0.5480585  0.3179948     -0.130353
## high   0.3801102 -1.7710455   -2.8966950 -0.9052016 -0.2116700     -0.420582
##        nurseryyes  higheryes internetyes romanticyes    famrel  freetime
## medium -0.3860142  0.4625662   0.1693571  -0.2087969 0.1725594 0.1044448
## high   -0.3746112 13.8133965   1.4313507  -0.6505342 0.1224774 0.2261176
##             goout        Dalc      Walc     health     absences
## medium -0.5008719 -0.03093519 0.2542125 -0.1117957 -0.009072048
## high   -0.5963279 -0.65423797 0.2506209 -0.1978788 -0.075728042
## 
## Std. Errors:
##        (Intercept)  schoolMS   sexMale       age addressRural famsizeLE3
## medium    2.760858 0.4735802 0.3231423 0.1384497    0.3460654  0.3068633
## high      1.893333 0.7282558 0.4389219 0.1936324    0.5508723  0.4219170
##         PstatusT      Medu      Fedu Mjobhealth Mjobother Mjobservices
## medium 0.4590199 0.2023125 0.1732549  0.7195521 0.4151042    0.4744694
## high   0.6461540 0.2952639 0.2410363  1.0017409 0.7266589    0.7439737
##        Mjobteacher Fjobhealth Fjobother Fjobservices Fjobteacher reasonhome
## medium   0.6232093  0.8605433 0.6088245    0.6277663   0.8362844  0.3376421
## high     0.9410552  1.2146066 0.8787987    0.8899111   1.0840516  0.4950016
##        reasonother reasonreputation guardianmother guardianother traveltime
## medium   0.5120118        0.3562544      0.3444914     0.6161985  0.1997060
## high     0.7411039        0.5123340      0.4906010     0.9799304  0.3275639
##        studytime  failures schoolsupyes famsupyes   paidyes activitiesyes
## medium 0.1835493 0.2082609    0.3842060 0.3011925 0.2997969     0.2764869
## high   0.2519264 0.6014317    0.8805127 0.4316540 0.4167115     0.3989094
##        nurseryyes higheryes internetyes romanticyes    famrel  freetime
## medium  0.3460577  0.626390   0.3591587   0.2862979 0.1538298 0.1466419
## high    0.5020241  1.893381   0.6706503   0.4268852 0.2188094 0.2166055
##            goout      Dalc      Walc    health   absences
## medium 0.1461035 0.2022896 0.1556648 0.1011735 0.01616592
## high   0.2111375 0.3779105 0.2294001 0.1427126 0.03843847
## 
## Residual Deviance: 632.3307 
## AIC: 792.3307
tidy(fit_all, conf.int = TRUE, exponentiate = TRUE) %>%
  kable() %>%
  kable_styling("basic", full_width = FALSE)
y.level term estimate std.error statistic p.value conf.low conf.high
medium (Intercept) 7.012932e+01 2.7608584 1.5394998 0.1236823 3.132223e-01 1.570169e+04
medium schoolMS 1.229828e+00 0.4735802 0.4368312 0.6622338 4.861075e-01 3.111406e+00
medium sexMale 1.466863e+00 0.3231423 1.1856263 0.2357699 7.786285e-01 2.763432e+00
medium age 7.979888e-01 0.1384497 -1.6299110 0.1031203 6.083425e-01 1.046756e+00
medium addressRural 1.201418e+00 0.3460654 0.5302543 0.5959356 6.097093e-01 2.367367e+00
medium famsizeLE3 1.110080e+00 0.3068633 0.3403204 0.7336153 6.083474e-01 2.025614e+00
medium PstatusT 6.491722e-01 0.4590199 -0.9412604 0.3465714 2.640228e-01 1.596167e+00
medium Medu 9.862221e-01 0.2023125 -0.0685754 0.9453276 6.633855e-01 1.466167e+00
medium Fedu 1.146739e+00 0.1732549 0.7902946 0.4293558 8.165632e-01 1.610421e+00
medium Mjobhealth 1.443083e+00 0.7195521 0.5097359 0.6102365 3.522146e-01 5.912553e+00
medium Mjobother 7.209352e-01 0.4151042 -0.7882504 0.4305503 3.195648e-01 1.626423e+00
medium Mjobservices 1.303525e+00 0.4744694 0.5586712 0.5763861 5.143401e-01 3.303608e+00
medium Mjobteacher 4.867420e-01 0.6232093 -1.1553440 0.2479496 1.434902e-01 1.651108e+00
medium Fjobhealth 8.229694e-01 0.8605433 -0.2264107 0.8208820 1.523660e-01 4.445079e+00
medium Fjobother 1.380738e+00 0.6088245 0.5299030 0.5961792 4.186768e-01 4.553481e+00
medium Fjobservices 9.366432e-01 0.6277663 -0.1042631 0.9169606 2.736645e-01 3.205751e+00
medium Fjobteacher 1.439413e+00 0.8362844 0.4355402 0.6631703 2.794724e-01 7.413649e+00
medium reasonhome 1.392723e+00 0.3376421 0.9810994 0.3265437 7.185601e-01 2.699393e+00
medium reasonother 1.723495e+00 0.5120118 1.0631677 0.2877059 6.318076e-01 4.701488e+00
medium reasonreputation 1.663614e+00 0.3562544 1.4287326 0.1530811 8.275767e-01 3.344235e+00
medium guardianmother 8.430702e-01 0.3444914 -0.4955276 0.6202278 4.291727e-01 1.656134e+00
medium guardianother 9.285049e-01 0.6161985 -0.1203827 0.9041800 2.775077e-01 3.106657e+00
medium traveltime 1.051575e+00 0.1997060 0.2518129 0.8011857 7.109679e-01 1.555357e+00
medium studytime 1.210425e+00 0.1835493 1.0404358 0.2981375 8.446958e-01 1.734503e+00
medium failures 4.587131e-01 0.2082609 -3.7420877 0.0001825 3.049785e-01 6.899428e-01
medium schoolsupyes 5.469279e-01 0.3842060 -1.5706109 0.1162731 2.575688e-01 1.161360e+00
medium famsupyes 5.780711e-01 0.3011925 -1.8196284 0.0688156 3.203360e-01 1.043174e+00
medium paidyes 1.374369e+00 0.2997969 1.0607009 0.2888259 7.636878e-01 2.473381e+00
medium activitiesyes 8.777855e-01 0.2764869 -0.4714618 0.6373110 5.105548e-01 1.509157e+00
medium nurseryyes 6.797609e-01 0.3460577 -1.1154619 0.2646525 3.449780e-01 1.339433e+00
medium higheryes 1.588144e+00 0.6263900 0.7384636 0.4602328 4.652708e-01 5.420933e+00
medium internetyes 1.184543e+00 0.3591587 0.4715383 0.6372564 5.859148e-01 2.394789e+00
medium romanticyes 8.115600e-01 0.2862979 -0.7292996 0.4658184 4.630452e-01 1.422387e+00
medium famrel 1.188342e+00 0.1538298 1.1217554 0.2619664 8.790254e-01 1.606504e+00
medium freetime 1.110094e+00 0.1466419 0.7122440 0.4763137 8.327948e-01 1.479727e+00
medium goout 6.060021e-01 0.1461035 -3.4281979 0.0006076 4.551039e-01 8.069334e-01
medium Dalc 9.695384e-01 0.2022896 -0.1529252 0.8784572 6.521924e-01 1.441300e+00
medium Walc 1.289446e+00 0.1556648 1.6330759 0.1024530 9.503880e-01 1.749465e+00
medium health 8.942270e-01 0.1011735 -1.1049899 0.2691640 7.333795e-01 1.090352e+00
medium absences 9.909690e-01 0.0161659 -0.5611836 0.5746724 9.600627e-01 1.022870e+00
high (Intercept) 3.470000e-04 1.8933332 -4.2074222 0.0000258 8.500000e-06 1.419040e-02
high schoolMS 1.087444e+00 0.7282558 0.1151108 0.9083573 2.609243e-01 4.532099e+00
high sexMale 2.241125e+00 0.4389219 1.8385454 0.0659821 9.481019e-01 5.297573e+00
high age 7.239741e-01 0.1936324 -1.6681071 0.0952945 4.953394e-01 1.058140e+00
high addressRural 1.085813e+00 0.5508723 0.1494523 0.8811967 3.688517e-01 3.196380e+00
high famsizeLE3 1.484588e+00 0.4219170 0.9365291 0.3490008 6.493363e-01 3.394239e+00
high PstatusT 5.266291e-01 0.6461540 -0.9924242 0.3209907 1.484217e-01 1.868582e+00
high Medu 1.799973e+00 0.2952639 1.9906654 0.0465177 1.009106e+00 3.210666e+00
high Fedu 8.627731e-01 0.2410363 -0.6123708 0.5402924 5.379305e-01 1.383780e+00
high Mjobhealth 1.379596e+00 1.0017409 0.3212313 0.7480351 1.936727e-01 9.827324e+00
high Mjobother 3.738489e-01 0.7266589 -1.3540103 0.1757331 8.998350e-02 1.553207e+00
high Mjobservices 1.825782e+00 0.7439737 0.8091797 0.4184118 4.247930e-01 7.847303e+00
high Mjobteacher 1.929064e-01 0.9410552 -1.7486227 0.0803563 3.050130e-02 1.220040e+00
high Fjobhealth 1.059289e+00 1.2146066 0.0474215 0.9621773 9.798050e-02 1.145222e+01
high Fjobother 6.498627e-01 0.8787987 -0.4904356 0.6238257 1.160879e-01 3.637947e+00
high Fjobservices 6.163866e-01 0.8899111 -0.5437408 0.5866198 1.077357e-01 3.526524e+00
high Fjobteacher 4.727243e+00 1.0840516 1.4329043 0.1518852 5.647569e-01 3.956894e+01
high reasonhome 1.655812e+00 0.4950016 1.0187671 0.3083136 6.275738e-01 4.368749e+00
high reasonother 2.021763e+00 0.7411039 0.9498938 0.3421662 4.730440e-01 8.640901e+00
high reasonreputation 1.563292e+00 0.5123340 0.8720754 0.3831672 5.727177e-01 4.267167e+00
high guardianmother 1.093524e+00 0.4906010 0.1822366 0.8553971 4.180497e-01 2.860412e+00
high guardianother 2.218262e+00 0.9799304 0.8130416 0.4161942 3.250084e-01 1.514018e+01
high traveltime 9.336579e-01 0.3275639 -0.2095629 0.8340089 4.913204e-01 1.774233e+00
high studytime 1.462446e+00 0.2519264 1.5088148 0.1313461 8.925646e-01 2.396183e+00
high failures 1.701550e-01 0.6014317 -2.9447159 0.0032325 5.234860e-02 5.530754e-01
high schoolsupyes 5.520540e-02 0.8805127 -3.2897821 0.0010027 9.828500e-03 3.100810e-01
high famsupyes 4.044603e-01 0.4316540 -2.0970539 0.0359888 1.735607e-01 9.425414e-01
high paidyes 8.092317e-01 0.4167115 -0.5079534 0.6114860 3.575752e-01 1.831379e+00
high activitiesyes 6.566645e-01 0.3989094 -1.0543298 0.2917320 3.004632e-01 1.435145e+00
high nurseryyes 6.875566e-01 0.5020241 -0.7462016 0.4555456 2.570305e-01 1.839213e+00
high higheryes 9.978882e+05 1.8933810 7.2956243 0.0000000 2.440243e+04 4.080663e+07
high internetyes 4.184347e+00 0.6706503 2.1342728 0.0328205 1.124007e+00 1.557709e+01
high romanticyes 5.217670e-01 0.4268852 -1.5239089 0.1275315 2.260014e-01 1.204597e+00
high famrel 1.130294e+00 0.2188094 0.5597448 0.5756535 7.361060e-01 1.735570e+00
high freetime 1.253723e+00 0.2166055 1.0439141 0.2965251 8.200242e-01 1.916799e+00
high goout 5.508306e-01 0.2111375 -2.8243581 0.0047375 3.641644e-01 8.331796e-01
high Dalc 5.198380e-01 0.3779105 -1.7311984 0.0834164 2.478507e-01 1.090300e+00
high Walc 1.284823e+00 0.2294001 1.0925060 0.2746108 8.195541e-01 2.014230e+00
high health 8.204693e-01 0.1427126 -1.3865545 0.1655776 6.202763e-01 1.085274e+00
high absences 9.270683e-01 0.0384385 -1.9701107 0.0488257 8.597909e-01 9.996101e-01

Model regresi logistik multinomial fit_all dibangun untuk memprediksi kategori nilai akhir siswa grade_cat dengan menggunakan semua variabel prediktor dalam data, kecuali nilai G1, G2, dan G3. Model ini menggunakan fungsi multinom() dari paket nnet dan berhasil konvergen setelah 90 iterasi, dengan deviance akhir sebesar 632,33 dan nilai AIC sebesar 792,33. Nilai AIC ini dapat digunakan untuk membandingkan model dengan model lain pada tahap selanjutnya.

Dari hasil estimasi, diperoleh koefisien dalam bentuk odds ratio untuk dua kategori, yaitu medium dan high, dengan kategori referensi adalah low. Beberapa variabel menunjukkan pengaruh positif yang signifikan terhadap peluang siswa mendapatkan nilai lebih tinggi. Misalnya, variabel higheryes memiliki pengaruh yang sangat kuat, terutama untuk kategori high dengan odds ratio mencapai sekitar 1 juta, menunjukkan bahwa siswa yang berencana melanjutkan pendidikan ke jenjang lebih tinggi memiliki kemungkinan jauh lebih besar untuk memperoleh nilai tinggi. Demikian juga, variabel internetyes dan Medu (pendidikan ibu) jga meningkatkan peluang pencapaian nilai tinggi, masing-masing dengan odds ratio sekitar 4,18 dan 1,80.

Sebaliknya, beberapa variabel justru memiliki pengaruh negatif yang signifikan. Variabel goout, yang mencerminkan frekuensi siswa keluar rumah bersama teman, menurunkan peluang masuk ke dalam kategori nilai yang lebih tinggi. Hal ini tercermin dari odds ratio sebesar 0,61 untuk kategori medium dan 0,55 untuk kategori high. Selain itu, variabel failures memiliki pengaruh negatif yang sangat kuat terhadap pencapaian nilai tinggi, dengan odds ratio hanya sekitar 0,17 untuk kategori high. Namun, schoolsupyes justru menunjukkan pengaruh negatif, kemungkinan karena dukungan ini lebih banyak diberikan kepada siswa yang sudah memiliki risiko akademik.

Terdapat pula sejumlah variabel yang tidak memberikan pengaruh signifikan secara statistik, seperti absences, health, romantic, guardian, serta berbagai jenis pekerjaan orang tua. Hal ini dapat terjadi karena kontribusinya kecil dengan variabel lain yang lebih berpengaruh secara langsung terhadap pencapaian akademik.

7.

# ----- Marginal Effects -----
# Absences
mfx_abs <- avg_comparisons(fit_all, variables = "absences", type = "probs")
print(mfx_abs)
## 
##   Group Estimate Std. Error     z Pr(>|z|)   S    2.5 %   97.5 %
##  low     0.00341    0.00275  1.24   0.2145 2.2 -0.00198 8.81e-03
##  medium  0.00400    0.00380  1.05   0.2936 1.8 -0.00346 1.15e-02
##  high   -0.00741    0.00382 -1.94   0.0524 4.3 -0.01490 7.65e-05
## 
## Term: absences
## Type:  probs 
## Comparison: +1
# Sex
mfx_sex <- avg_comparisons(fit_all, variables = "sex", type = "probs")
print(mfx_sex)
## 
##   Group Estimate Std. Error      z Pr(>|z|)   S   2.5 % 97.5 %
##  low     -0.0756     0.0512 -1.478    0.139 2.8 -0.1759 0.0247
##  medium   0.0173     0.0579  0.299    0.765 0.4 -0.0961 0.1307
##  high     0.0583     0.0408  1.429    0.153 2.7 -0.0216 0.1383
## 
## Term: sex
## Type:  probs 
## Comparison: Male - Female
# Studytime
mfx_study <- avg_comparisons(fit_all, variables = "studytime", type = "probs")
print(mfx_study)
## 
##   Group Estimate Std. Error      z Pr(>|z|)   S   2.5 % 97.5 %
##  low    -0.03608     0.0275 -1.310    0.190 2.4 -0.0901 0.0179
##  medium  0.00912     0.0331  0.275    0.783 0.4 -0.0558 0.0740
##  high    0.02696     0.0248  1.087    0.277 1.9 -0.0216 0.0756
## 
## Term: studytime
## Type:  probs 
## Comparison: +1
# Failures
mfx_fail <- avg_comparisons(fit_all, variables = "failures", type = "probs")
print(mfx_fail)
## 
##   Group Estimate Std. Error     z Pr(>|z|)    S   2.5 %  97.5 %
##  low      0.1686     0.0376  4.48  < 0.001 17.0  0.0948  0.2424
##  medium  -0.0651     0.0429 -1.52  0.12959  2.9 -0.1492  0.0191
##  high    -0.1035     0.0352 -2.94  0.00332  8.2 -0.1726 -0.0344
## 
## Term: failures
## Type:  probs 
## Comparison: +1
# Goout (keluar malam)
mfx_goout <- avg_comparisons(fit_all, variables = "goout", type = "probs")
print(mfx_goout)
## 
##   Group Estimate Std. Error     z Pr(>|z|)    S   2.5 %   97.5 %
##  low      0.0907     0.0246  3.68  < 0.001 12.1  0.0425  0.13896
##  medium  -0.0650     0.0252 -2.58  0.00992  6.7 -0.1145 -0.01560
##  high    -0.0257     0.0171 -1.50  0.13360  2.9 -0.0592  0.00787
## 
## Term: goout
## Type:  probs 
## Comparison: +1

Analisis marginal effects yang dihitung menggunakan fungsi avg_comparisons() dari model fit_all menunjukkan seberapa besar perubahan pada probabilitas dari setiap kategori target (low, medium, high) akibat perubahan satu unit pada masing-masing variabel prediktor. Hasil untuk variabel absences menunjukkan bahwa peningkatan satu kehadiran absensi memiliki efek kecil terhadap probabilitas nilai akhir: tidak signifikan secara statistik untuk kategori low dan medium, namun hampir signifikan untuk kategori high (p = 0.0524) dengan arah negatif, yang menunjukkan bahwa makin banyak absensi dapat menurunkan kemungkinan siswa masuk kategori nilai tinggi. Untuk variabel sex, perbedaan antara laki-laki dan perempuan tidak menunjukkan pengaruh signifikan terhadap probabilitas kategori nilai manapun, yang berarti jenis kelamin bukan prediktor kuat dalam model ini.

Pada variabel studytime, peningkatan waktu belajar cenderung meningkatkan probabilitas masuk kategori nilai tinggi, dan menurunkan probabilitas masuk kategori rendah, namun hasilnya tidak signifikan (p > 0.1), sehingga tidak dapat disimpulkan ada pengaruh nyata dari waktu belajar. Sebaliknya, variabel failures menunjukkan efek yang sangat signifikan secara statistik. Kegagalan sebelumnya meningkatkan kemungkinan berada di kategori nilai rendah secara signifikan (p < 0.001) dan mengurangi probabilitas berada di kategori tinggi (p = 0.00332), menjadikannya salah satu prediktor terkuat dalam model.

Untuk variabel goout (frekuensi keluar malam), ditemukan bahwa semakin sering siswa keluar malam, maka probabilitas mereka berada di kategori nilai rendah meningkat secara signifikan (p < 0.001), dan probabilitas masuk kategori medium menurun (p = 0.00992). Meski pengaruh pada kategori nilai tinggi tidak signifikan, arah efek negatif tetap terlihat. Secara keseluruhan, variabel failures dan goout memberikan pengaruh yang signifikan terhadap distribusi probabilitas kategori nilai, sedangkan variabel lainnya menunjukkan kecenderungan arah efek namun belum signifikan secara statistik.