Salsabila Alika Seftizianka (24031554117
Atya Azharina Aziz (24031554194)
Kelas 2024A
Dosen Pengampu Mata Kuliah: Dinda Galuh Guminta, M.Stat.
Abstrak Prestasi akademik siswa merupakan salah satu indikator penting dalam mengevaluasi keberhasilan proses pendidikan. Banyak faktor yang dapat memengaruhi performa akademik siswa khususnya pada mata pelajaran matematika, seperti kebiasaan belajar, latar belakang keluarga, serta aktivitas sehari-hari siswa. Dataset Student Performance (Mathematics) memiliki banyak variabel yang saling berkorelasi sehingga diperlukan metode analisis multivariat untuk menyederhanakan struktur data. Penelitian ini bertujuan menerapkan Principal Component Analysis (PCA) untuk mereduksi dimensi variabel dan Factor Analysis (FA) untuk mengidentifikasi faktor laten yang memengaruhi performa siswa. Dataset terdiri dari 395 siswa dengan berbagai variabel karakteristik dan nilai matematika. Hasil penelitian menunjukkan bahwa variabel yang berkaitan dengan performa akademik dan aktivitas siswa membentuk faktor utama yang berhubungan dengan nilai matematika siswa.
Kata kunci: PCA, Factor Analysis, Student Performance, Matematika.
BAB 1 Pendahuluan
Prestasi akademik siswa merupakan indikator penting dalam menilai kualitas pendidikan. Mata pelajaran matematika sering digunakan sebagai indikator kemampuan akademik karena membutuhkan kemampuan logika dan analisis. Namun, performa matematika tidak hanya dipengaruhi oleh kemampuan akademik, tetapi juga oleh kebiasaan belajar, kondisi keluarga, dan aktivitas sosial siswa. Banyaknya faktor yang memengaruhi prestasi siswa menyebabkan analisis data menjadi kompleks, terutama ketika jumlah variabel cukup banyak. Oleh karena itu, diperlukan metode statistik yang mampu menyederhanakan data tanpa menghilangkan informasi penting. Dataset Student Performance (Mathematics) berisi data karakteristik siswa sekolah menengah yang mencakup berbagai faktor seperti waktu belajar, kegagalan sebelumnya, ketidakhadiran, aktivitas siswa, serta nilai matematika. Dataset terdiri dari 395 siswa dengan berbagai variabel karakteristik. Principal Component Analysis (PCA) digunakan untuk mereduksi dimensi data dengan mengubah sejumlah variabel menjadi beberapa komponen utama yang mampu menjelaskan sebagian besar variasi data (Abdi & Williams, 2020). Factor Analysis (FA) digunakan untuk mengidentifikasi faktor laten dengan mengelompokkan variabel yang memiliki hubungan kuat ke dalam faktor yang sama (Shrestha, 2021).
Berdasarkan latar belakang tersebut, rumusan masalah dalam penelitian ini adalah:
Bagaimana karakteristik data Student Performance (Mathematics)?
Bagaimana hasil reduksi dimensi menggunakan Principal Component Analysis?
Faktor apa saja yang terbentuk menggunakan Factor Analysis dan variabel apa yang berkontribusi terhadap nilai matematika siswa?
Tujuan dari penelitian ini adalah:
Mendeskripsikan karakteristik data Student Performance (Mathematics).
Melakukan reduksi dimensi menggunakan Principal Component Analysis.
Mengidentifikasi faktor laten menggunakan Factor Analysis dan menentukan variabel yang berpengaruh terhadap nilai matematika siswa.
BAB 2 Metodologi Penelitian
BAB 3 Hasil dan Pembahasan
data <- read.csv("student-mat.csv", sep=";")
head(data)
## school sex age address famsize Pstatus Medu Fedu Mjob Fjob reason
## 1 GP F 18 U GT3 A 4 4 at_home teacher course
## 2 GP F 17 U GT3 T 1 1 at_home other course
## 3 GP F 15 U LE3 T 1 1 at_home other other
## 4 GP F 15 U GT3 T 4 2 health services home
## 5 GP F 16 U GT3 T 3 3 other other home
## 6 GP M 16 U LE3 T 4 3 services other reputation
## guardian traveltime studytime failures schoolsup famsup paid activities
## 1 mother 2 2 0 yes no no no
## 2 father 1 2 0 no yes no no
## 3 mother 1 2 3 yes no yes no
## 4 mother 1 3 0 no yes yes yes
## 5 father 1 2 0 no yes yes no
## 6 mother 1 2 0 no yes yes yes
## nursery higher internet romantic famrel freetime goout Dalc Walc health
## 1 yes yes no no 4 3 4 1 1 3
## 2 no yes yes no 5 3 3 1 1 3
## 3 yes yes yes no 4 3 2 2 3 3
## 4 yes yes yes yes 3 2 2 1 1 5
## 5 yes yes no no 4 3 2 1 2 5
## 6 yes yes yes no 5 4 2 1 2 5
## absences G1 G2 G3
## 1 6 5 6 6
## 2 4 5 5 6
## 3 10 7 8 10
## 4 2 15 14 15
## 5 4 6 10 10
## 6 10 15 15 15
install.packages("psych")
## Installing package into '/cloud/lib/x86_64-pc-linux-gnu-library/4.5'
## (as 'lib' is unspecified)
data_num <- data[,c(
"studytime",
"failures",
"absences",
"traveltime",
"famrel",
"freetime",
"goout",
"Dalc",
"Walc",
"health",
"G1",
"G2",
"G3"
)]
head(data_num)
## studytime failures absences traveltime famrel freetime goout Dalc Walc health
## 1 2 0 6 2 4 3 4 1 1 3
## 2 2 0 4 1 5 3 3 1 1 3
## 3 2 3 10 1 4 3 2 2 3 3
## 4 3 0 2 1 3 2 2 1 1 5
## 5 2 0 4 1 4 3 2 1 2 5
## 6 2 0 10 1 5 4 2 1 2 5
## G1 G2 G3
## 1 5 6 6
## 2 5 5 6
## 3 7 8 10
## 4 15 14 15
## 5 6 10 10
## 6 15 15 15
library(psych)
desc <- describe(data_num)
tabel_deskriptif <- desc[,c("min","max","mean","median","sd")]
tabel_deskriptif
## min max mean median sd
## studytime 1 4 2.04 2 0.84
## failures 0 3 0.33 0 0.74
## absences 0 75 5.71 4 8.00
## traveltime 1 4 1.45 1 0.70
## famrel 1 5 3.94 4 0.90
## freetime 1 5 3.24 3 1.00
## goout 1 5 3.11 3 1.11
## Dalc 1 5 1.48 1 0.89
## Walc 1 5 2.29 2 1.29
## health 1 5 3.55 4 1.39
## G1 3 19 10.91 11 3.32
## G2 0 19 10.71 11 3.76
## G3 0 20 10.42 11 4.58
hist(data_num$G3,
main="Histogram Nilai Matematika (G3)",
xlab="Nilai Matematika",
ylab="Frekuensi")
png("histogram_G3.png")
hist(data_num$G3,
main="Histogram Nilai Matematika (G3)",
xlab="Nilai Matematika",
ylab="Frekuensi")
dev.off()
## png
## 2
KMO(data_num)
## Kaiser-Meyer-Olkin factor adequacy
## Call: KMO(r = data_num)
## Overall MSA = 0.71
## MSA for each item =
## studytime failures absences traveltime famrel freetime goout
## 0.76 0.92 0.42 0.66 0.40 0.58 0.66
## Dalc Walc health G1 G2 G3
## 0.63 0.60 0.58 0.85 0.68 0.73
fa_result <- fa(data_num, nfactors=3, rotate="varimax")
fa_result$RMSEA
## RMSEA lower upper confidence
## 0.04056552 0.02249418 0.05729871 0.90000000
cortest.bartlett(cor(data_num), n=nrow(data_num))
## $chisq
## [1] 1737.372
##
## $p.value
## [1] 5.154143e-311
##
## $df
## [1] 78
pca <- prcomp(data_num, scale=TRUE)
summary(pca)
## Importance of components:
## PC1 PC2 PC3 PC4 PC5 PC6 PC7
## Standard deviation 1.778 1.4218 1.12853 1.02446 0.99774 0.96123 0.95480
## Proportion of Variance 0.243 0.1555 0.09797 0.08073 0.07658 0.07107 0.07013
## Cumulative Proportion 0.243 0.3986 0.49653 0.57726 0.65384 0.72491 0.79504
## PC8 PC9 PC10 PC11 PC12 PC13
## Standard deviation 0.87565 0.82608 0.79444 0.55372 0.44442 0.28302
## Proportion of Variance 0.05898 0.05249 0.04855 0.02359 0.01519 0.00616
## Cumulative Proportion 0.85402 0.90651 0.95506 0.97865 0.99384 1.00000
fa_result <- fa(data_num, nfactors=3, rotate="varimax")
print(fa_result)
## Factor Analysis using method = minres
## Call: fa(r = data_num, nfactors = 3, rotate = "varimax")
## Standardized loadings (pattern matrix) based upon correlation matrix
## MR1 MR2 MR3 h2 u2 com
## studytime 0.13 -0.27 -0.05 0.096 0.904 1.5
## failures -0.38 0.18 0.05 0.179 0.821 1.5
## absences 0.00 0.15 -0.11 0.033 0.967 1.9
## traveltime -0.13 0.14 -0.06 0.040 0.960 2.3
## famrel 0.01 -0.09 0.23 0.061 0.939 1.3
## freetime 0.01 0.28 0.84 0.785 0.215 1.2
## goout -0.13 0.41 0.20 0.224 0.776 1.7
## Dalc -0.03 0.68 0.01 0.464 0.536 1.0
## Walc -0.03 0.96 -0.13 0.943 0.057 1.0
## health -0.08 0.08 0.08 0.019 0.981 3.0
## G1 0.87 -0.10 0.03 0.765 0.235 1.0
## G2 0.97 -0.06 -0.02 0.951 0.049 1.0
## G3 0.92 -0.02 0.01 0.854 0.146 1.0
##
## MR1 MR2 MR3
## SS loadings 2.76 1.81 0.84
## Proportion Var 0.21 0.14 0.06
## Cumulative Var 0.21 0.35 0.42
## Proportion Explained 0.51 0.33 0.16
## Cumulative Proportion 0.51 0.84 1.00
##
## Mean item complexity = 1.5
## Test of the hypothesis that 3 factors are sufficient.
##
## df null model = 78 with the objective function = 4.47 with Chi Square = 1737.37
## df of the model are 42 and the objective function was 0.18
##
## The root mean square of the residuals (RMSR) is 0.03
## The df corrected root mean square of the residuals is 0.04
##
## The harmonic n.obs is 395 with the empirical chi square 22.52 with prob < 0.99
## The total n.obs was 395 with Likelihood Chi Square = 69.41 with prob < 0.0049
##
## Tucker Lewis Index of factoring reliability = 0.969
## RMSEA index = 0.041 and the 90 % confidence intervals are 0.022 0.057
## BIC = -181.71
## Fit based upon off diagonal values = 0.99
## Measures of factor score adequacy
## MR1 MR2 MR3
## Correlation of (regression) scores with factors 0.98 0.97 0.89
## Multiple R square of scores with factors 0.97 0.95 0.79
## Minimum correlation of possible factor scores 0.93 0.89 0.57
BAB 4 Kesimpulan dan Saran
Berdasarkan hasil analisis Principal Component Analysis (PCA) dan Factor Analysis (FA) pada dataset Student Performance (Mathematics), karakteristik data menunjukkan variasi nilai matematika siswa yang cukup besar dengan rata-rata nilai akhir sebesar 10,42. Hasil pengujian asumsi menunjukkan nilai Kaiser-Meyer-Olkin (KMO) sebesar 0,71 dan uji Bartlett menghasilkan p-value < 0,05 sehingga data memenuhi syarat untuk dilakukan analisis PCA dan FA. Hasil PCA menunjukkan beberapa komponen utama mampu menjelaskan sebagian besar variasi data. Hasil FA menunjukkan terbentuk tiga faktor utama yaitu faktor akademik, faktor aktivitas sosial, dan faktor waktu luang. Faktor akademik yang terdiri dari G1, G2, dan G3 merupakan faktor paling dominan dalam menjelaskan performa matematika siswa. Secara umum, metode PCA dan FA mampu menyederhanakan struktur data dan mengidentifikasi faktor yang memengaruhi prestasi akademik siswa.
Berdasarkan hasil penelitian yang telah dilakukan, terdapat beberapa saran yang dapat diberikan, yaitu:
Penelitian selanjutnya dapat menggunakan variabel tambahan seperti faktor demografi dan kondisi keluarga untuk memperoleh hasil analisis yang lebih lengkap.
Penelitian selanjutnya dapat menggunakan metode analisis lain seperti regresi atau metode machine learning untuk memprediksi nilai matematika siswa.
Penelitian selanjutnya dapat menggunakan dataset yang lebih besar atau berasal dari beberapa sekolah sehingga hasil penelitian dapat digeneralisasikan dengan lebih baik.