Data yang digunakan dalam studi kasus ini adalah Timbulan Sampah Tahunan (ton) menurut Kabupaten/Kota di Provinsi Jawa Barat pada tahun 2018 hingga 2024. Data ini mencakup seluruh kabupaten dan kota di Jawa Barat, dengan variabel utama:
Tahun → periode pengamatan (2018–2024).
Kabupaten/Kota → wilayah di Jawa Barat.
Timbulan Sampah Tahunan (ton) → jumlah timbulan sampah yang dihasilkan dalam satu tahun.
Timbulan Sampah Harian (ton) → rata-rata timbulan sampah per hari.
Sumber Data: Sistem Informasi Pengelolaan Sampah Nasional (SIPSN) – Kementerian Lingkungan Hidup dan Kehutanan (KLHK) Republik Indonesia. (https://sipsn.kemenlh.go.id/sipsn/public/data/timbulan)
library(forecast)
library(ggfortify)
library(ggplot2)
library(dplyr)
library(tidyverse)
library(readxl)
library(car)
library(rstatix)
library(forecast)
library(lme4);
library(lmerTest)
library(lmtest)
# 1. Menginput Data
data_sampah<- read_excel("C:/Users/asus/Documents/KULIAH STELLA/SEMESTER 5/PERMINATAN_SL/Data Timbulan Sampah_Jawa Barat.xlsx", skip = 1)
names(data_sampah)
## [1] "Tahun" "Provinsi"
## [3] "Kabupaten/Kota" "Timbulan Sampah Harian(ton)"
## [5] "Timbulan Sampah Tahunan(ton)"
head(data_sampah)
## # A tibble: 6 × 5
## Tahun Provinsi `Kabupaten/Kota` Timbulan Sampah Hari…¹ Timbulan Sampah Tahu…²
## <dbl> <chr> <chr> <dbl> <dbl>
## 1 2024 Jawa Bar… Kab. Ciamis 501. 182871.
## 2 2024 Jawa Bar… Kab. Majalengka 938. 342528.
## 3 2024 Jawa Bar… Kab. Sumedang 482. 176030.
## 4 2024 Jawa Bar… Kab. Indramayu 1137. 414836.
## 5 2024 Jawa Bar… Kab. Purwakarta 418. 152673.
## 6 2024 Jawa Bar… Kab. Karawang 1067. 389444.
## # ℹ abbreviated names: ¹`Timbulan Sampah Harian(ton)`,
## # ²`Timbulan Sampah Tahunan(ton)`
#2. Cleaning Data
data_sampah <- data_sampah %>%
rename(
tahun = Tahun,
provinsi = Provinsi,
kabupaten_kota = `Kabupaten/Kota`,
timbulan_sampah_harian_ton = `Timbulan Sampah Harian(ton)`,
timbulan_sampah_tahunan_ton = `Timbulan Sampah Tahunan(ton)`
)
# tampilkan nama kolom
print("Nama kolom setelah clean:")
## [1] "Nama kolom setelah clean:"
print(names(data_sampah))
## [1] "tahun" "provinsi"
## [3] "kabupaten_kota" "timbulan_sampah_harian_ton"
## [5] "timbulan_sampah_tahunan_ton"
# cek missing / NA
summary(data_sampah)
## tahun provinsi kabupaten_kota
## Min. :2019 Length:92 Length:92
## 1st Qu.:2021 Class :character Class :character
## Median :2022 Mode :character Mode :character
## Mean :2022
## 3rd Qu.:2023
## Max. :2024
## timbulan_sampah_harian_ton timbulan_sampah_tahunan_ton
## Min. : 83.74 Min. : 30567
## 1st Qu.: 292.21 1st Qu.: 106657
## Median : 743.60 Median : 271414
## Mean : 867.31 Mean : 316568
## 3rd Qu.:1269.91 3rd Qu.: 463515
## Max. :2813.51 Max. :1026931
count_na <- sapply(data_sampah, function(x) sum(is.na(x)))
print("Jumlah NA per kolom:")
## [1] "Jumlah NA per kolom:"
print(count_na)
## tahun provinsi
## 0 0
## kabupaten_kota timbulan_sampah_harian_ton
## 0 0
## timbulan_sampah_tahunan_ton
## 0
Melihat distribusi timbulan sampah tahunan (ton) di Kabupaten/Kota Jawa Barat per Tahun
Mengidentifikasi apakah terdapat outlier atau tidak
ggplot(data_sampah, aes(x = factor(tahun), y = timbulan_sampah_tahunan_ton, fill = factor(tahun))) +
geom_boxplot(color = "navy", alpha = 0.9) +
scale_fill_brewer(palette = "Set3") +
labs(title = "Boxplot Timbulan Sampah Tahunan Antar Tahun di Jawa Barat",
x = "Tahun",
y = "Timbulan Sampah Tahunan (ton)") +
theme_minimal(base_size = 12)
Median (ditunjukkan dengan garis tebal hitam) ada setiap tahun berada di kisaran 200.000–400.000 ton. Hal ini menunjukkan bahwa sebagian besar kabupaten/kota di Jawa Barat menghasilkan timbulan sampah tahunan dalam rentang tersebut. Secara umum, tingkat timbulan sampah antarwilayah relatif agak stabil dari tahun ke tahun.
Whisker pada tahun 2021 hingga tahun 2023 tampak lebih panjang dibandingkan dengan tahun-tahun lainnya, maka data ditahun tersebut terdapat variasi daerah dengan timbulan sampah yang jauh lebih rendah begitupun seblaiknya terdapat timbulan sampah yang sangat tinggi.
Pada tahun 2021–2022, whisker terlihat relatif lebih pendek dibandingkan tahun 2019–2020. Hal ini menunjukkan bahwa distribusi timbulan sampah antar kabupaten/kota sedikit lebih merata, meskipun tetap ada gap cukup besar.
Selain itu, di tahun 2023 masih terdapat outlier dengan capaian di atas 1.000.000 ton. Hal ini menunjukkan bahwa masih ada daerah tertentu yang memiliki jumlah timbulan sampahnya jauh melampaui kabupaten/kota lain. Secara keseluruhan, distribusi timbulan sampah tahunan cenderung stabil dari 2019 hingga 2024, namun tetap terdapat ketimpangan signifikan antar kabupaten/kota.
bartlett.test(timbulan_sampah_tahunan_ton ~ factor(tahun), data = data_sampah)
##
## Bartlett test of homogeneity of variances
##
## data: timbulan_sampah_tahunan_ton by factor(tahun)
## Bartlett's K-squared = 1.3058, df = 5, p-value = 0.9343
Berdasarkan hasil output diatas :
P-value sebesar 0,9343 > 0,05 sehingga dapat diputuskan bahwa gagal menolak \(H_0\) . Hal ini berarti varians timbulan sampah tahunan pada tahun 2019–2024 dapat dianggap homogen atau memenuhi asumsi homogenitas varians.Dengan kata lain, persebaran data timbulan sampah antar tahun relatif homogen. Tidak terdapat perbedaan variasi yang signifikan pada setiap kelompok tahun.
leveneTest(timbulan_sampah_tahunan_ton ~ factor(tahun), data = data_sampah)
## Levene's Test for Homogeneity of Variance (center = median)
## Df F value Pr(>F)
## group 5 0.2546 0.9364
## 86
Berdasarkan hasil output diatas :
P-value sebesar 0,9364 > 0,05 sehingga dapat diputuskan bahwa gagal menolak \(H_0\) . Hal ini berarti varians timbulan sampah tahunan pada tahun 2019–2024 dapat dianggap homogen atau memenuhi asumsi homogenitas varians.Dengan kata lain, persebaran data timbulan sampah antar tahun relatif homogen. Tidak terdapat perbedaan variasi yang signifikan pada setiap kelompok tahun.
# ANOVA: apakah rata-rata timbulan sampah tahunan berbeda antar tahun?
anova_sampah <- aov(timbulan_sampah_tahunan_ton ~ factor(tahun), data = data_sampah)
# Ringkasan hasil
summary(anova_sampah)
## Df Sum Sq Mean Sq F value Pr(>F)
## factor(tahun) 5 8.237e+10 1.647e+10 0.312 0.905
## Residuals 86 4.542e+12 5.281e+10
Berdasarkan hasil analisis ANOVA, diperoleh nilai F = 0.312 dengan p-value = 0.905. Karena p-value lebih besar dari taraf signifikansi 0.05, maka keputusan uji adalah gagal menolak \(H₀\) . Hal ini menunjukkan bahwa tidak terdapat perbedaan yang signifikan pada rata-rata timbulan sampah tahunan antar tahun 2019 hingga 2024. Dengan kata lain, tren timbulan sampah di kabupaten/kota Jawa Barat cenderung stabil antar tahun, tanpa adanya perubahan rata-rata yang bermakna secara statistik.
# Ubah ke time series
data_ts <- ts(data_sampah$timbulan_sampah_tahunan_ton,
start = min(data_sampah$tahun),
frequency = 1) # data tahunan, jadi freq = 1
# Holt’s method forecasting
holt_jabar <- holt(data_ts, h = 5)# h = prediksi 5 tahun ke depan
summary(holt_jabar)
##
## Forecast method: Holt's method
##
## Model Information:
## Holt's method
##
## Call:
## holt(y = data_ts, h = 5)
##
## Smoothing parameters:
## alpha = 0.0449
## beta = 0.0045
##
## Initial states:
## l = 281405.5698
## b = 7154.6471
##
## sigma: 237909.9
##
## AIC AICc BIC
## 2699.770 2700.468 2712.379
##
## Error measures:
## ME RMSE MAE MPE MAPE MASE
## Training set -23433.51 232680.5 196566.3 -125.6456 154.8807 0.6849604
## ACF1
## Training set -0.1779842
##
## Forecasts:
## Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
## 2111 249684.2 -55209.62 554578.0 -216610.7 715979.1
## 2112 247132.7 -58132.38 552397.8 -219730.0 713995.3
## 2113 244581.2 -61125.36 550287.7 -222956.6 712119.0
## 2114 242029.6 -64194.41 548253.7 -226299.6 710358.9
## 2115 239478.1 -67345.28 546301.5 -229767.8 708724.0
# Plot hasil forecast
autoplot(holt_jabar) +
ggtitle("Forecast Timbulan Sampah Tahunan di Jawa Barat dengan Holt’s Method") +
xlab("Tahun") +
ylab("Timbulan Sampah Tahunan (ton)") +
theme_minimal(base_size = 14) +
theme(
plot.title = element_text(hjust = 0.5, face = "bold", size = 12),
axis.title = element_text(face = "bold"),
panel.grid.minor = element_blank(),
panel.grid.major = element_line(color = "tomato")
)
RMSE: 232.680 ton → menunjukkan kesalahan rata-rata prediksi cukup besar karena data timbulan sampah bervariasi tajam antar kabupaten/kota.
MAPE: 154.88% → relatif tinggi, artinya model Holt’s kurang baik dalam memprediksi data ini. Hal ini wajar karena timbulan sampah memiliki variasi yang besar antar daerah dan tidak selalu mengikuti tren yang halus.
Area biru pada bagian akhir grafik merupakan hasil proyeksi 5 tahun ke depan. Garis tengah biru menunjukkan titik prediksi, sementara area biru muda (shaded area) menunjukkan interval prediksi. Dari hasil proyeksi terlihat bahwa timbulan sampah tahunan diperkirakan akan cenderung sedikit menurun.
Kebijakan yang kiranya dapat dilakukan oleh pemerintah daerah Jawa Barat adalah meningkatkan infrastuktur pengelolaan sampah, Pengawasan dan Edukasi Masyarakat mengenai Penguatan Program Reduce, Reuse, Recycle (3R).