# ============================================================
# UJI NORMALITAS
# Nama : Muhammad Taufiqul Hafizh Muttaqin
# NIM : 2409106099
# ============================================================
# 1. Instalasi package (jalankan sekali saja jika belum terpasang)
# install.packages("nortest")
# install.packages("tseries")
# 2. Memanggil package
library(nortest)
library(tseries)
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
# 3. Memasukkan data nilai ujian matematika
nilai <- c(40, 50, 50, 60, 60, 60, 70, 70,
70, 70, 80, 80, 80, 90, 90, 100)
# 4. Statistik deskriptif
cat("STATISTIK DESKRIPTIF\\n")
## STATISTIK DESKRIPTIF\n
cat("Jumlah data :", length(nilai), "\\n")
## Jumlah data : 16 \n
cat("Rata-rata :", mean(nilai), "\\n")
## Rata-rata : 70 \n
cat("Median :", median(nilai), "\\n")
## Median : 70 \n
cat("Standar deviasi:", sd(nilai), "\\n\\n")
## Standar deviasi: 16.32993 \n\n
# 5. Hipotesis pengujian
# H0: Data berasal dari populasi yang berdistribusi normal.
# H1: Data tidak berasal dari populasi yang berdistribusi normal.
# Taraf signifikansi (alpha) = 0.05
alpha <- 0.05
# 6. Uji Kolmogorov-Smirnov dengan koreksi Lilliefors
hasil_lilliefors <- lillie.test(nilai)
cat("HASIL UJI LILLIEFORS\\n")
## HASIL UJI LILLIEFORS\n
print(hasil_lilliefors)
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: nilai
## D = 0.125, p-value = 0.7235
if (hasil_lilliefors$p.value > alpha) {
cat("Keputusan: Gagal menolak H0. Tidak terdapat bukti yang cukup")
cat(" bahwa data tidak berdistribusi normal.\\n\\n")
} else {
cat("Keputusan: Tolak H0. Terdapat bukti bahwa data tidak")
cat(" berdistribusi normal.\\n\\n")
}
## Keputusan: Gagal menolak H0. Tidak terdapat bukti yang cukup bahwa data tidak berdistribusi normal.\n\n
# 7. Uji Jarque-Bera
hasil_jarque_bera <- jarque.bera.test(nilai)
cat("HASIL UJI JARQUE-BERA\\n")
## HASIL UJI JARQUE-BERA\n
print(hasil_jarque_bera)
##
## Jarque Bera Test
##
## data: nilai
## X-squared = 0.30827, df = 2, p-value = 0.8572
if (hasil_jarque_bera$p.value > alpha) {
cat("Keputusan: Gagal menolak H0. Tidak terdapat bukti yang cukup")
cat(" bahwa data tidak berdistribusi normal.\\n\\n")
} else {
cat("Keputusan: Tolak H0. Terdapat bukti bahwa data tidak")
cat(" berdistribusi normal.\\n\\n")
}
## Keputusan: Gagal menolak H0. Tidak terdapat bukti yang cukup bahwa data tidak berdistribusi normal.\n\n
# 8. Q-Q Plot
qqnorm(nilai,
main = "Q-Q Plot Nilai Ujian Matematika",
xlab = "Kuantil Teoretis",
ylab = "Kuantil Sampel")
qqline(nilai, col = "red", lwd = 2)

# 9. Kesimpulan
cat("KESIMPULAN\\n")
## KESIMPULAN\n
if (hasil_lilliefors$p.value > alpha &&
hasil_jarque_bera$p.value > alpha) {
cat("Berdasarkan uji Lilliefors dan Jarque-Bera pada taraf")
cat(" signifikansi 5%, kedua p-value lebih besar dari 0.05.")
cat(" Dengan demikian, H0 gagal ditolak dan tidak terdapat")
cat(" bukti yang cukup untuk menyatakan bahwa data tidak")
cat(" berdistribusi normal.\\n")
} else {
cat("Setidaknya salah satu pengujian menghasilkan p-value")
cat(" kurang dari atau sama dengan 0.05. Periksa hasil")
cat(" pengujian dan Q-Q Plot untuk menilai normalitas data.\\n")
}
## Berdasarkan uji Lilliefors dan Jarque-Bera pada taraf signifikansi 5%, kedua p-value lebih besar dari 0.05. Dengan demikian, H0 gagal ditolak dan tidak terdapat bukti yang cukup untuk menyatakan bahwa data tidak berdistribusi normal.\n