# Data volume produksi air minum PDAM Kab. Serang (ribu m3/bulan)
air <- 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
# Objek time series bulanan, mulai Januari 2022
air_ts <- ts(air, start = c(2022, 1), frequency = 12)
air_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
plot(air_ts, main = "Volume Produksi Air Minum PDAM Kab. Serang (2022-2024)",
ylab = "ribu m3/bulan", xlab = "Waktu", lwd = 1.5)
Plot data menunjukkan produksi air minum PDAM Kabupaten Serang memiliki tren naik dan pola musiman yang berulang tiap tahun (puncak sekitar Juli, lembah sekitar Oktober–November dan Maret). Ayunan musimannya relatif konstan, sehingga dekomposisi additive tepat digunakan.
dekomp_add <- decompose(air_ts, type = "additive")
plot(dekomp_add)
Plot menunjukkan produksi air minum PDAM Kabupaten Serang memiliki tren naik yang stabil dan pola musiman yang jelas dan berulang setiap tahun, dengan puncak sekitar Juli dan lembah sekitar November. Komponen residu berfluktuasi acak di sekitar nol dengan nilai sangat kecil dan tanpa pola sistematis. Model additive sesuai untuk data ini.
indeks_musiman <- round(dekomp_add$seasonal[1:12], 2)
names(indeks_musiman) <- month.abb
indeks_musiman
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov
## -4.54 -1.75 -11.91 -0.06 7.84 21.21 27.75 9.73 -7.35 -15.48 -20.12
## Dec
## -5.31
cat("\nJumlah 12 indeks musiman:", round(sum(dekomp_add$seasonal[1:12]), 6), "\n")
##
## Jumlah 12 indeks musiman: 0
cat("Bulan tertinggi:", month.abb[which.max(indeks_musiman)],
"(", max(indeks_musiman), ")\n")
## Bulan tertinggi: Jul ( 27.75 )
cat("Bulan terendah :", month.abb[which.min(indeks_musiman)],
"(", min(indeks_musiman), ")\n")
## Bulan terendah : Nov ( -20.12 )
warna <- ifelse(indeks_musiman >= 0, "#0B2A5B", "#6B2A2F")
barplot(indeks_musiman, names.arg = month.abb, col = warna,
main = "Indeks Musiman (Additive)",
ylab = "Indeks musiman (ribu m3)", ylim = c(-25, 32))
abline(h = 0)
Plot indeks musiman menunjukkan produksi air minum tertinggi pada bulan Juli (+27,75 ribu m³) dan terendah pada bulan November (−20,12 ribu m³). Pola ini diduga terkait musim kemarau (kebutuhan air meningkat) dan musim hujan (kebutuhan air PDAM menurun).
knitr::kable(
data.frame(Bulan = month.abb, Indeks = as.numeric(indeks_musiman)),
caption = "Dua belas indeks musiman"
)
| Bulan | Indeks |
|---|---|
| Jan | -4.54 |
| Feb | -1.75 |
| Mar | -11.91 |
| Apr | -0.06 |
| May | 7.84 |
| Jun | 21.21 |
| Jul | 27.75 |
| Aug | 9.73 |
| Sep | -7.35 |
| Oct | -15.48 |
| Nov | -20.12 |
| Dec | -5.31 |
Interpretasi:
Tertinggi: Juli (+27,75), diikuti Juni (+21,21) dan Agustus (+9,73).
Terendah: November (−20,12), diikuti Oktober (−15,48) dan Maret (−11,91).
Dugaan penjelasan: produksi tinggi pada Mei–Agustus diduga terkait musim kemarau, ketika kebutuhan air bersih meningkat (mandi, mencuci, menyiram) dan sumber air tanah/sumur warga menyusut sehingga pelanggan lebih bergantung pada PDAM. Produksi rendah pada Oktober–November dan Maret diduga terkait musim hujan, ketika warga memanfaatkan air hujan dan sumur kembali terisi. Ini hanya dugaan karena data tidak memuat variabel curah hujan.
dekomp_add$random
## Jan Feb Mar Apr May Jun
## 2022 NA NA NA NA NA NA
## 2023 0.83159722 0.33159722 0.78993056 0.22743056 -0.33506944 -0.41840278
## 2024 -0.91840278 -0.41840278 -0.87673611 -0.31423611 0.24826389 0.33159722
## Jul Aug Sep Oct Nov Dec
## 2022 -0.50173611 0.01909722 -0.52256944 -0.10590278 -0.12673611 -0.64756944
## 2023 0.41493056 -0.10590278 0.43576389 0.01909722 0.03993056 0.56076389
## 2024 NA NA NA NA NA NA
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
cat("\nSimpangan baku residu:", round(sd(dekomp_add$random, na.rm = TRUE), 4), "\n")
##
## Simpangan baku residu: 0.4863
cat("Rata-rata residu :", round(mean(dekomp_add$random, na.rm = TRUE), 4), "\n")
## Rata-rata residu : -0.0434
plot(dekomp_add$random, type = "p", pch = 19, col = "#0B2A5B",
main = "Komponen Residu", ylab = "Residu", xlab = "Waktu")
abline(h = 0, col = "red", lwd = 2)
Plot menunjukkan komponen residu berfluktuasi acak di sekitar nol (rata-rata −0,0434; simpangan baku 0,4863 ribu m³) tanpa pola sistematis yang tersisa. Artinya tren dan musiman sudah menangkap hampir seluruh pola pada data, sehingga model additive sesuai untuk data produksi air minum PDAM Kabupaten Serang.
res <- na.omit(dekomp_add$random)
par(mfrow = c(1, 2))
hist(res, main = "Histogram Residu", xlab = "Residu", col = "grey80", border = "white")
acf(res, main = "ACF Residu")
par(mfrow = c(1, 1))
Interpretasi: Ya, residu tampak berfluktuasi acak di sekitar nol.
Rata-rata (≈ −0,04) dan median hampir tepat nol, dengan sebaran di kedua sisi nol (sekitar −0,92 sampai +0,83) tanpa kemencengan yang ekstrem.
Simpangan baku hanya ≈ 0,49 ribu m³, sangat kecil dibandingkan amplitudo musiman (±20–28) dan level data (±400–500), sehingga hampir seluruh variasi sudah tertangkap oleh tren dan musiman.
Tanda residu bolak-balik tanpa pola sistematis. Pada ACF, hampir seluruh lag berada di dalam batas signifikansi; hanya lag 12 (1 tahun) yang sedikit melewati batas. Dengan hanya 24 residu, hal ini masih dapat dianggap wajar dan tidak menunjukkan pola sistematis yang berarti.
Hasil dekomposisi additive pada data volume produksi air minum PDAM Kabupaten Serang periode Januari 2022–Desember 2024 menunjukkan bahwa:
Tren: naik stabil dari ≈ 427,75 (Jul 2022) menjadi ≈ 488,46 (Jun 2024), ≈ +2,64 ribu m³ per bulan.
Musiman: berulang tiap tahun, tertinggi Juli (+27,75) dan terendah November (−20,12), diduga terkait musim kemarau dan hujan.
Residu: acak di sekitar nol (rata-rata −0,0434; SD ≈ 0,49 ribu m³) tanpa pola sistematis.
Model dekomposisi additive sesuai untuk data produksi air minum PDAM Kabupaten Serang ini.
plot(air_ts, main = "Volume Produksi Air Minum PDAM Kab. Serang (2022-2024)",
ylab = "ribu m3/bulan", xlab = "Waktu", lwd = 1.5)
Plot data menunjukkan produksi air minum PDAM Kabupaten Serang memiliki tren naik dan pola musiman yang berulang tiap tahun, dengan ayunan musiman yang tampak relatif konstan meskipun level data terus naik.
# Lonjakan April (Apr - Mar) dan Desember (Des - Nov) tiap tahun
tabel <- matrix(air, nrow = 3, byrow = TRUE,
dimnames = list(2022:2024, month.abb))
lonjakan_apr <- tabel[, "Apr"] - tabel[, "Mar"]
lonjakan_des <- tabel[, "Dec"] - tabel[, "Nov"]
lonjakan_apr; lonjakan_des
## 2022 2023 2024
## 15 14 15
## 2022 2023 2024
## 17 18 19
Interpretasi: Lonjakan April dan Desember tidak membesar secara berarti dari 2023 ke 2024.
Lonjakan April: +15 (2022), +14 (2023), +15 (2024). Dari 2023 ke 2024 hanya berubah +14 menjadi +15.
Lonjakan Desember: +17 (2022), +18 (2023), +19 (2024). Dari 2023 ke 2024 hanya berubah +18 menjadi +19.
Level data naik sekitar 6–7% (±450 menjadi ±480), tetapi lonjakannya hampir tetap. Dalam persen, lonjakan April (3,20% menjadi 3,21%) dan Desember (4,00% menjadi 3,96%) tidak membesar. Artinya ayunan musiman tidak ikut membesar mengikuti level data.
dekomp_mul <- decompose(air_ts, type = "multiplicative")
plot(dekomp_mul)
Plot menunjukkan produksi air minum PDAM Kabupaten Serang memiliki tren naik yang stabil dan pola musiman yang berulang setiap tahun, dengan puncak sekitar Juli dan lembah sekitar November. Komponen residu berfluktuasi di sekitar 1 dengan nilai sangat kecil.
faktor_musim <- round(dekomp_mul$seasonal[1:12], 4)
names(faktor_musim) <- month.abb
faktor_musim
## Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov
## 0.9902 0.9963 0.9744 0.9999 1.0167 1.0449 1.0626 1.0218 0.9836 0.9657 0.9556
## Dec
## 0.9883
cat("Rata-rata 12 faktor:", mean(dekomp_mul$seasonal[1:12]), "\n")
## Rata-rata 12 faktor: 1
Interpretasi: Pada model multiplicative, faktor musiman berupa rasio terhadap tren (rata-rata 12 faktor = 1).
Tertinggi: Juli (1,0626), artinya produksi sekitar 6,26% di atas tren. Diikuti Juni (1,0449) dan Agustus (1,0218).
Terendah: November (0,9556), artinya produksi sekitar 4,44% di bawah tren. Diikuti Oktober (0,9657) dan Maret (0,9744).
Pola ini sama dengan hasil model additive (puncak Juli, lembah November), sehingga diduga tetap terkait musim kemarau (kebutuhan air meningkat) dan musim hujan (kebutuhan air PDAM menurun).
sd_mul <- sd(dekomp_mul$random, na.rm = TRUE)
sd_add <- sd(dekomp_add$random, na.rm = TRUE)
sd_mul; sd_add
## [1] 0.001249183
## [1] 0.4862621
Interpretasi: Nilai sd mentah tidak dapat dibandingkan langsung karena skalanya berbeda. Residu multiplicative berupa rasio di sekitar 1 (sd = 0,0012), sedangkan residu additive berupa selisih di sekitar 0 (sd = 0,4863 ribu m³).
# Samakan skala agar adil dibandingkan
# (a) dalam satuan asli (ribu m3)
res_mul_unit <- air_ts - dekomp_mul$trend * dekomp_mul$seasonal
sd(res_mul_unit, na.rm = TRUE)
## [1] 0.5613295
# (b) dalam skala relatif terhadap tren
sd(dekomp_add$random / dekomp_add$trend, na.rm = TRUE)
## [1] 0.001059905
Interpretasi: Setelah skalanya disamakan:
Dalam satuan asli (ribu m³): sd residu additive 0,4863 lebih kecil dibandingkan multiplicative 0,5613.
Dalam skala relatif terhadap tren: sd residu additive 0,00106 lebih kecil dibandingkan multiplicative 0,00125.
Pada kedua skala, residu additive sedikit lebih kecil, artinya model additive menjelaskan data sedikit lebih baik.
Model additive lebih sesuai untuk data produksi air minum PDAM Kabupaten Serang, dengan alasan:
Poin 1: Lonjakan April (+14 menjadi +15) dan Desember (+18 menjadi +19) hampir tetap dari 2023 ke 2024 walaupun level data naik, sehingga amplitudo musiman konstan dan tidak membesar mengikuti level.
Poin 2: Faktor multiplicative (Juli +6,26%, November −4,44%) mengasumsikan persentase tetap, sedangkan data menunjukkan selisih yang hampir tetap tiap tahun.
Poin 3: Sd residu additive lebih kecil pada skala yang sama (0,4863 vs 0,5613 ribu m³; 0,00106 vs 0,00125 secara relatif).
Perbedaan kedua model memang kecil karena tren hanya naik sekitar 7% per tahun, sehingga keduanya sama-sama cocok. Namun seluruh bukti mengarah ke additive, sejalan dengan materi bahwa model additive tepat digunakan ketika ayunan musiman relatif konstan.