SOAL LATIHAN

Dinas perhubungan mencatat jumlah kendaraan yang menyebrang di Pelabuhan Merak-Bakauheni setiap bulan Januari2023 - Desember2024 (Ribuan Kendaraan) tentukan:

  1. Buat objek timeseries dan plot runtun waktunya di R
  2. Identifikasi apakah data menunjukkan komponen tren, dan jelaskan alasannya
  3. Identifikasi bulan-bulan puncak kunjungan- kaitkan dengan peristiwa nyata (Lebaran, Libur Nataru)
  4. Buat seasonal plot & boxplot perbulan, lalu simpulkan: musiman atau siklis

Penyelesaian:

#1. Membuat objek ts dan plot runtun waktu
#memasukkan data
kendaraan <- c (420, 410, 430, 780, 460, 470, 460, 480, 440, 450, 460, 600, 450, 440, 460, 820, 490, 500, 495, 510, 470, 480, 490, 640)

#membuat objek time series
data_ts <- ts(kendaraan, start= c(2023,1),
              frequency = 12)
print(data_ts)
##      Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
## 2023 420 410 430 780 460 470 460 480 440 450 460 600
## 2024 450 440 460 820 490 500 495 510 470 480 490 640
#plot runtun waktu
plot(data_ts,
     main = "Jumlah kendaraan yang menyebrang Merak-Bakauheni",
     xlab = "Tahun",
     ylab = "Jumlah kendaraan (ribu)",
     type = "o")

Dari plot tersebut, jumlah kendaraan yang menyebrang cenderung mengalami kenaikan dari tahun 2023 ke 2024, walaupun setiap bulannya masih berfluktuasi. Terlihat ada lonjakkan yang cukup tinggi pada bulan April di tahun 2023 sebanyak 780 ribu kendaraan dan tahun 2024 sebanyak 820 ribu kendaraan, dan kenaikan juga terjadi pada bulan Desember. Jadi, dari grafik ini terlihat adanya kecenderungan pola musiman.

#2. Identifikasi apakah data menunjukkan komponen  tren, dan jelaskan alasannya
#rata-rata jumlah kendaraan tiap tahun
data <- data.frame(
  Tahun = rep(c(2023,2024), each = 12),
  Bulan = rep (month.abb, 2),
  Kendaraan = kendaraan
)

aggregate (Kendaraan ~ Tahun, data = data, mean)
##   Tahun Kendaraan
## 1  2023  488.3333
## 2  2024  520.4167

Rata-rata jumlah kendaraan pada tahun 2023 sekitar 488.3333 ribu kendaraan, sedangkan di tahun 2024 rata-ratanya meningkat menjadi 520.4167 ribu kendaraan. Artinya, terjadi peningkatan rata-rata sekitar 32,08 ribu kendaraan atau sekitar 6,57%. Dari perbandingan rata-rata tahunan, terdapat indikasi adanya tren meningkat karena rata-rata tahun 2024 lebih tinggi dari tahun 2023.

#3. Identifikasi bulan-bulan puncak kunjungan- kaitkan dengan peristiwa nyata (Lebaran, Libur Nataru)
#mencari nilai maximum nya
max(data$Kendaraan)
## [1] 820
#menampilkan bulan dengan jumlah kendaraan tertinggi
data[data$Kendaraan == max (data$Kendaraan), ]
##    Tahun Bulan Kendaraan
## 16  2024   Apr       820
data [order(-data$Kendaraan), ] #dari yang terbesar
##    Tahun Bulan Kendaraan
## 16  2024   Apr       820
## 4   2023   Apr       780
## 24  2024   Dec       640
## 12  2023   Dec       600
## 20  2024   Aug       510
## 18  2024   Jun       500
## 19  2024   Jul       495
## 17  2024   May       490
## 23  2024   Nov       490
## 8   2023   Aug       480
## 22  2024   Oct       480
## 6   2023   Jun       470
## 21  2024   Sep       470
## 5   2023   May       460
## 7   2023   Jul       460
## 11  2023   Nov       460
## 15  2024   Mar       460
## 10  2023   Oct       450
## 13  2024   Jan       450
## 9   2023   Sep       440
## 14  2024   Feb       440
## 3   2023   Mar       430
## 1   2023   Jan       420
## 2   2023   Feb       410

Berdasarkan hasilnya, bulan April merupakan bulan dengan jumlah kendaraan yang paling tinggi dikedua tahun, jumlah yang dihasilkan cukup masuk akal karena bulan April berkaitan dengan periode mudik Lebaran Idul Fitri. Pada bulan Desember jumlah kendaraan cukup tinggi hal ini dapat dikaitkan dengan periode libur Natal dan Tahun Baru (Nataru).

#4. Buat seasonal plot & boxplot perbulan, lalu simpulkan: musiman atau siklis
library(ggplot2)

#mentransformasi variabel bulan menjadi bentuk angka
data$Bulan_num <- rep (1:12, 2)

data$Bulan <- factor(
  data$Bulan,
  levels = month.abb)

ggplot(data,
       aes(x = Bulan_num,
           y = Kendaraan,
           group = Tahun,
           linetype = factor(Tahun))) +
  geom_line() +
  geom_point() +
  scale_x_continuous(
    breaks = 1:12,
    labels = month.abb
  ) +
  labs(
    title = "Seasonal Plot Jumlah Kendaraan",
    x = "Bulan",
    y = "Jumlah Kendaraan (ribu)",
    linetype = "Tahun"
  ) +
  theme_minimal()

#Boxplot perbulan
ggplot(data,
       aes(x = Bulan,
           y = Kendaraan)) +
  geom_boxplot() +
  geom_jitter(width = 0.1) +
  labs(
    title = "Boxplot Jumlah Kendaraan per Bulan",
    x = "Bulan",
    y = "Jumlah Kendaraan (ribu)"
  ) +
  theme_minimal()

Berdasarkan seasonal plot dan boxplot, data lebih menunjukkan pola musiman (seasonal) daripada siklis. Terlihat adanya pola yang berulang pada bulan tertentu setiap tahun. Jumlah kendaraan meningkat pada bulan april yang dapat dikaitkan dengan arus mudik Lebaran dan pada bulan Desember yang berkaitkan dengan periode libur Nataru. Jika dibandingkan dengan siklis, siklis biasanya memiliki pola naik-turun dalam jangka waktu yang lebih panjang dan tidak harus terjadi pada bulan yang sama setiap tahun.