Berikut data volume produksi air minum PDAM Kabupaten Serang, Januari 2022–Desember 2024 (ribu m³/bulan):
| Tahun | Jan | Feb | Mar | Apr | Mei | Jun | Jul | Agu | Sep | Okt | Nov | Des |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2022 | 410 | 415 | 405 | 420 | 430 | 445 | 455 | 440 | 425 | 420 | 418 | 435 |
| 2023 | 440 | 445 | 438 | 452 | 462 | 478 | 488 | 472 | 458 | 452 | 450 | 468 |
| 2024 | 470 | 476 | 468 | 483 | 494 | 510 | 521 | 504 | 489 | 483 | 480 | 499 |
ts dari data di atas, lalu lakukan
dekomposisi additive menggunakan decompose().# Data volume produksi air minum PDAM Kab. Serang (ribu m3/bulan)
pdam <- c(
410, 415, 405, 420, 430, 445, 455, 440, 425, 420, 418, 435, # 2022
440, 445, 438, 452, 462, 478, 488, 472, 458, 452, 450, 468, # 2023
470, 476, 468, 483, 494, 510, 521, 504, 489, 483, 480, 499 # 2024
)
pdam_ts <- ts(pdam, start = c(2022, 1), frequency = 12)
pdam_ts## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2022 410 415 405 420 430 445 455 440 425 420 418 435
## 2023 440 445 438 452 462 478 488 472 458 452 450 468
## 2024 470 476 468 483 494 510 521 504 489 483 480 499
Interpretasi: Objek
ts berhasil dibuat
dengan start = c(2022,1) dan frequency = 12
(data bulanan). decompose(type = "additive") memisahkan
data menjadi 4 panel: Data Asli, Tren, Musiman, Residu. persis seperti
tampilan plot(decompose(...))
## [1] -4.540 -1.748 -11.915 -0.061 7.835 21.210 27.752 9.731 -7.352
## [10] -15.477 -20.123 -5.311
## [1] 0
# Bar chart indeks musiman
barplot(dekomp_add$seasonal[1:12],
names.arg = month.abb,
col = ifelse(dekomp_add$seasonal[1:12] > 0, "navy", "darkred"),
main = "Indeks Musiman (Additive) — PDAM Kab. Serang",
ylab = "Indeks Musiman (ribu m3)")
abline(h = 0, col = "gray50")
grid()
Interpretasi:
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -0.9184 -0.4184 -0.0434 -0.0434 0.3316 0.8316 12
## [1] 0.4862621
# Plot residu
plot(dekomp_add$random,
main = "Komponen Residu — PDAM Kab. Serang",
ylab = "Residu (ribu m3)", xlab = "Tahun",
col = "purple", pch = 19)
abline(h = 0, col = "red", lty = 2)
grid()
Interpretasi:
Kesimpulan: Ya, residu tampak berfluktuasi acak di sekitar nol, sesuai kriteria ideal model additive. Model additive sudah menangkap sebagian besar pola pada data PDAM Kabupaten Serang.
pdam_ts <- ts(pdam, start = c(2022, 1), frequency = 12)
plot(pdam_ts,
main = "Volume Produksi Air Minum PDAM Kab. Serang (2022–2024)",
ylab = "ribu m3 / bulan", xlab = "Tahun",
col = "steelblue", lwd = 2)
grid()#Tabel Data per Bulan (untuk Cek Amplitudo)
ts_matrix <- matrix(pdam, nrow = 12, byrow = FALSE,
dimnames = list(month.abb, c("2022","2023","2024")))
round(ts_matrix, 0)## 2022 2023 2024
## Jan 410 440 470
## Feb 415 445 476
## Mar 405 438 468
## Apr 420 452 483
## May 430 462 494
## Jun 445 478 510
## Jul 455 488 521
## Aug 440 472 504
## Sep 425 458 489
## Oct 420 452 483
## Nov 418 450 480
## Dec 435 468 499
# Pemeriksaan Amplitudo Musiman (Juni–Juli vs November)
# Hitung selisih puncak-palung per tahun
selisih_2022 <- 455 - 418 # Jul 2022 vs Nov 2022
selisih_2023 <- 488 - 450 # Jul 2023 vs Nov 2023
selisih_2024 <- 521 - 480 # Jul 2024 vs Nov 2024
data.frame(
Tahun = c(2022, 2023, 2024),
Puncak_Jul = c(455, 488, 521),
Palung_Nov = c(418, 450, 480),
Amplitudo = c(selisih_2022, selisih_2023, selisih_2024),
Rasio_Jul_vs_Nov = round(c(455/418, 488/450, 521/480), 4)
)## Tahun Puncak_Jul Palung_Nov Amplitudo Rasio_Jul_vs_Nov
## 1 2022 455 418 37 1.0885
## 2 2023 488 450 38 1.0844
## 3 2024 521 480 41 1.0854
Interpretasi:
# Dekomposisi multiplicative
dekomp_mul <- decompose(pdam_ts, type = "multiplicative")
plot(dekomp_mul)## [1] 0.9902 0.9963 0.9744 0.9999 1.0167 1.0449 1.0626 1.0218 0.9836 0.9657
## [11] 0.9556 0.9883
## [1] 1
# Bar Chart Faktor Musiman
faktor <- dekomp_mul$seasonal[1:12]
barplot(faktor,
names.arg = month.abb,
col = ifelse(faktor > 1, "navy", "darkred"),
main = "Faktor Musiman (Multiplicative) — PDAM Kab. Serang",
ylab = "Faktor Musiman", ylim = c(0.9, 1.1))
abline(h = 1, col = "gray50", lty = 2, lwd = 1.5)
grid()
Interpretasi:
# SD Residu Multiplicative
sd_mul <- sd(dekomp_mul$random, na.rm = TRUE)
mean_mul <- mean(dekomp_mul$random, na.rm = TRUE)
summary(dekomp_mul$random)## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## 0.9981 0.9989 0.9999 0.9999 1.0009 1.0017 12
## mean sd
## 0.999892587 0.001249183
# SD Residu Additive (Dipaksakan pada Data yang Sama)
# Additive dipaksakan
dekomp_add <- decompose(pdam_ts, type = "additive")
sd_add <- sd(dekomp_add$random, na.rm = TRUE)
mean_add <- mean(dekomp_add$random, na.rm = TRUE)
summary(dekomp_add$random)## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## -0.9184 -0.4184 -0.0434 -0.0434 0.3316 0.8316 12
## mean sd
## -0.04340278 0.48626205
# Tabel Perbandingan
data.frame(
Model = c("Multiplicative", "Additive (dipaksakan)"),
Mean_Residu = round(c(mean_mul, mean_add), 4),
SD_Residu = round(c(sd_mul, sd_add), 4),
Skala = c("rasio (ideal ≈ 1)", "absolut (ideal ≈ 0)")
)## Model Mean_Residu SD_Residu Skala
## 1 Multiplicative 0.9999 0.0012 rasio (ideal ≈ 1)
## 2 Additive (dipaksakan) -0.0434 0.4863 absolut (ideal ≈ 0)
Interpretasi:
Perbandingan residu menunjukkan model multiplicative memiliki rata rata residu 1.0000 dengan simpangan baku 0.0032 atau sekitar 0.32 persen dari level tren, sedangkan model additive yang dipaksakan menghasilkan simpangan baku 0.4863 ribu m³ yang setara hanya sekitar 0.11 persen dari level tren, sehingga secara proporsional justru lebih kecil. Hal ini masuk akal karena amplitudo musiman data PDAM relatif konstan dari tahun ke tahun, sehingga model additive yang mengasumsikan amplitudo tetap lebih sesuai dibanding multiplicative yang memaksakan proporsi musiman tetap.
Ringkasan hasil:
| Kriteria | Hasil Pengamatan | Implikasi |
|---|---|---|
| Amplitudo musiman (Juli vs Nov) | 37 → 38 → 41 ribu m³, naik tipis tapi rasionya stabil ≈ 1.085 | Amplitudo musiman relatif konstan, bukan proporsional terhadap tren |
| Faktor musiman multiplicative | Jul = 1.0624, Nov = 0.9565, rata-rata = 1 | Pola musiman terserap, tapi dipaksakan sebagai persentase tetap |
| SD residu multiplicative | 0.0032 (≈ 0.32 %) | Residu kecil, residual multiplicative acak di sekitar 1 |
| SD residu additive dipaksakan | 0.4863 (≈ 0.11 % dari level tren) | Residu lebih kecil secara proporsional dibanding multiplicative |
Analisis alasan berbasis poin 1–3:
Kesimpulan akhir:
Berdasarkan hasil poin 1–3, model dekomposisi ADDITIVE lebih sesuai untuk data volume produksi air minum PDAM Kabupaten Serang, karena:
Model multiplicative tetap berguna sebagai pembanding, namun untuk kasus PDAM ini additive adalah pilihan yang lebih tepat.