#############################################################################
# ===========================================================================
# Nama : Ghaitsaa Nadiah Haura
# Kelas : Ilmu Komunikasi A, 2025, Semester 3
# NIM : 2502056019
# BAB 7
# UJI KESAMAAN VARIANS POPULASI
# Uji Kesamaan Varians Populasi dengan Uji Levene
# ===========================================================================
# CONTOH KASUS 1
# ===========================================================================
# Nilai F tabel
qf(.95, df1 = 2, df2 = 15)
## [1] 3.68232
# Membaca data
varians <- read.csv("varians.csv", sep = ";", header = TRUE)
# Menampilkan data
varians
## Nilai Kelas
## 1 70 1
## 2 80 1
## 3 87 1
## 4 77 1
## 5 80 1
## 6 80 2
## 7 85 2
## 8 70 2
## 9 77 2
## 10 85 2
## 11 60 2
## 12 80 2
## 13 70 3
## 14 87 3
## 15 90 3
## 16 77 3
## 17 76 3
## 18 87 3
# =====================================================================================
# UJI LEVENE DENGAN PACKAGE car
# =====================================================================================
library(car)
## Loading required package: carData
hasil_levene <- leveneTest(
varians$Nilai,
as.factor(varians$Kelas)
)
hasil_levene
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 2 0.4267 0.6604
## 15
# Mengambil p-value
p_value_car <- hasil_levene[1, 3]
cat("\nP-value Uji Levene =", p_value_car, "\n")
##
## P-value Uji Levene = 0.6603586
# ==========================================================
# KEPUTUSAN UJI LEVENE
# ==========================================================
if (p_value_car >= 0.05) {
cat("Keputusan: H0 diterima.\n")
cat("Kesimpulan: Varians populasi dianggap sama/homogen.\n")
} else {
cat("Keputusan: H0 ditolak.\n")
cat("Kesimpulan: Varians populasi tidak sama/tidak homogen.\n")
}
## Keputusan: H0 diterima.
## Kesimpulan: Varians populasi dianggap sama/homogen.
# ==========================================================
# UJI LEVENE DENGAN PACKAGE lawstat
# Berdasarkan median
# ==========================================================
library(lawstat)
##
## Attaching package: 'lawstat'
## The following object is masked from 'package:car':
##
## levene.test
hasil_median <- levene.test(
varians[, "Nilai"],
varians[, "Kelas"],
location = "median",
correction.method = "zero.correction"
)
hasil_median
##
## Modified robust Brown-Forsythe Levene-type test based on the absolute
## deviations from the median with modified structural zero removal method
## and correction factor
##
## data: varians[, "Nilai"]
## Test Statistic = 0.4372, p-value = 0.6557
# ==========================================================
# UJI LEVENE DENGAN PACKAGE lawstat
# Berdasarkan mean
# ==========================================================
hasil_mean <- levene.test(
varians[, "Nilai"],
varians[, "Kelas"],
location = "mean",
correction.method = "zero.correction"
)
hasil_mean
##
## Classical Levene's test based on the absolute deviations from the mean
## ( zero.correction not applied because the location is not set to median
## )
##
## data: varians[, "Nilai"]
## Test Statistic = 0.64903, p-value = 0.5366
# ==========================================================
# CONTOH KASUS 2
# ==========================================================
# Membaca data kasus kedua
simpan <- read.csv(
"varians2.csv",
header = TRUE,
sep = ";"
)
# Menampilkan data
simpan
## Nilai Kelas
## 1 30 1
## 2 40 1
## 3 50 1
## 4 60 1
## 5 70 1
## 6 80 1
## 7 90 1
## 8 10 2
## 9 20 2
## 10 30 2
## 11 40 2
## 12 50 2
## 13 60 2
## 14 70 2
# ==========================================================
# STATISTIK DESKRIPTIF KASUS 2
# ==========================================================
# Membuat ringkasan berdasarkan Kelas
rata_rata <- tapply(
simpan$Nilai,
simpan$Kelas,
mean
)
varians_data <- tapply(
simpan$Nilai,
simpan$Kelas,
var
)
jumlah_data <- tapply(
simpan$Nilai,
simpan$Kelas,
sum
)
cat("\n====================================\n")
##
## ====================================
cat("STATISTIK DESKRIPTIF KASUS 2\n")
## STATISTIK DESKRIPTIF KASUS 2
cat("====================================\n")
## ====================================
cat("Rata-rata:\n")
## Rata-rata:
print(rata_rata)
## 1 2
## 60 40
cat("\nVarians:\n")
##
## Varians:
print(varians_data)
## 1 2
## 466.6667 466.6667
cat("\nJumlah:\n")
##
## Jumlah:
print(jumlah_data)
## 1 2
## 420 280
# Nilai F tabel
qf(.95, df1 = 1, df2 = 12)
## [1] 4.747225
# ==========================================================
# UJI LEVENE KASUS 2
# ==========================================================
hasil_kasus2 <- levene.test(
simpan[, "Nilai"],
simpan[, "Kelas"],
location = "mean",
correction.method = "zero.correction"
)
hasil_kasus2
##
## Classical Levene's test based on the absolute deviations from the mean
## ( zero.correction not applied because the location is not set to median
## )
##
## data: simpan[, "Nilai"]
## Test Statistic = 1.4336e-32, p-value = 1