TUGAS 3 ANALISIS DERET WAKTU

Data

Berikut data harga gabah kering panen (GKP) di tingkat petani Kabupaten Serang periode Januari 2023–Desember 2024 (Rp/kg):

Harga Gabah Kering Panen (GKP) Bulanan Tahun 2023–2024
Tahun Jan Feb Mar Apr Mei Jun Jul Agu Sep Okt Nov Des
2023 5200 5150 5300 5400 5250 5350 5450 5500 5400 5550 5600 5700
2024 5650 5700 5800 5900 5750 5850 5950 6000 5900 6050 6150 6300

1. Buat objek ts dan plot runtun waktu dari data harga GKP di atas.

# Data harga Gabah Kering Panen (GKP) Januari 2023 sampai Desember 2024
harga <- c(
  5200, 5150, 5300, 5400, 5250, 5350,
  5450, 5500, 5400, 5550, 5600, 5700,
  5650, 5700, 5800, 5900, 5750, 5850,
  5950, 6000, 5900, 6050, 6150, 6300
)

# 1. Membuat objek time series dan plot runtun waktu
gkp_ts <- ts(harga,
             start = c(2023, 1),
             frequency = 12)

gkp_ts
##       Jan  Feb  Mar  Apr  May  Jun  Jul  Aug  Sep  Oct  Nov  Dec
## 2023 5200 5150 5300 5400 5250 5350 5450 5500 5400 5550 5600 5700
## 2024 5650 5700 5800 5900 5750 5850 5950 6000 5900 6050 6150 6300
plot(gkp_ts,
     main = "Runtun Waktu Harga Gabah Kering Panen",
     xlab = "Tahun",
     ylab = "Harga (Rp/kg)",
     col = "navy",
     type = "o")

Interpretasi

Pada plot terlihat harga GKP dari Januari 2023 hingga Desember 2024 secara umum mengalami tren meningkat, meskipun terdapat beberapa penurunan pada bulan tertentu. Harga terendah sekitar Rp5.150/kg dan terus meningkat hingga mencapai Rp6.300/kg pada Desember 2024. Artinya, harga GKP cenderung meningkat dari tahun 2023 hingga 2024 meskipun mengalami sedikit naik-turun setiap bulannya.

2. Lakukan transformasi logaritma, lalu bandingkan plot data asli dan hasil transformasi.

# 2. Melakukan transformasi logaritma dan membandingkan plot
log_gkp <- log(gkp_ts)

log_gkp
##           Jan      Feb      Mar      Apr      May      Jun      Jul      Aug
## 2023 8.556414 8.546752 8.575462 8.594154 8.565983 8.584852 8.603371 8.612503
## 2024 8.639411 8.648221 8.665613 8.682708 8.656955 8.674197 8.691146 8.699515
##           Sep      Oct      Nov      Dec
## 2023 8.594154 8.621553 8.630522 8.648221
## 2024 8.682708 8.707814 8.724207 8.748305
par(mfrow = c(1, 2))

plot(gkp_ts,
     main = "Data Asli Harga GKP",
     xlab = "Tahun",
     ylab = "Harga (Rp/kg)",
     col = "navy",
     type = "o")

plot(log_gkp,
     main = "Transformasi Logaritma Harga GKP",
     xlab = "Tahun",
     ylab = "Log Harga GKP",
     col = "red",
     type = "o")

par(mfrow = c(1, 1))

Interpretasi

Output log_gkp menunjukkan bahwa nilai harga GKP setelah transformasi logaritma mengalami perubahan skala. Pada plot terlihat bahwa pola data hasil transformasi logaritma masih mengikuti pola data asli, yaitu tetap menunjukkan tren meningkat dari tahun 2023 hingga 2024, tetapi perubahan nilainya menjadi lebih kecil dan lebih terkompresi. Artinya, transformasi logaritma belum menghilangkan tren pada data, sehingga diperlukan differencing tingkat pertama.

3. Lakukan differencing tingkat pertama pada data hasil transformasi. Apakah tren sudah hilang?

# 3. Melakukan differencing tingkat pertama pada data hasil transformasi
diff_log_gkp <- diff(log_gkp)

diff_log_gkp
##               Jan          Feb          Mar          Apr          May
## 2023              -0.009661911  0.028710106  0.018692133 -0.028170877
## 2024 -0.008810630  0.008810630  0.017391743  0.017094433 -0.025752496
##               Jun          Jul          Aug          Sep          Oct
## 2023  0.018868484  0.018519048  0.009132484 -0.018349139  0.027398974
## 2024  0.017241806  0.016949558  0.008368250 -0.016807118  0.025105921
##               Nov          Dec
## 2023  0.008968670  0.017699577
## 2024  0.016393810  0.024097552
plot(diff_log_gkp,
     main = "Differencing Tingkat Pertama Data Log Harga GKP",
     xlab = "Tahun",
     ylab = "Differenced Log Harga",
     col = "orange",
     type = "o")

abline(h = 0, lty = 2)

Interpretasi

Hasil differencing tingkat pertama menunjukkan nilai yang berfluktuasi di sekitar nol, dengan adanya nilai positif dan negatif yang menunjukkan kenaikan dan penurunan harga antarbulan. Pada plot juga terlihat bahwa pola tren meningkat yang sebelumnya terdapat pada data asli sudah tidak terlihat lagi. Artinya, differencing tingkat pertama sudah berhasil menghilangkan tren pada data hasil transformasi logaritma.

4. Gunakan 21 observasi pertama sebagai data latih dan 3 observasi terakhir sebagai data uji. Hitung ramalan naif untuk 3 bulan tersebut, lalu hitung ME, MAE, MSE, RMSE, dan MAPE-nya.

# 4. Membagi data menjadi data latih dan data uji
train <- window(gkp_ts,
                end = c(2024, 9))

test <- window(gkp_ts,
               start = c(2024, 10))

train
##       Jan  Feb  Mar  Apr  May  Jun  Jul  Aug  Sep  Oct  Nov  Dec
## 2023 5200 5150 5300 5400 5250 5350 5450 5500 5400 5550 5600 5700
## 2024 5650 5700 5800 5900 5750 5850 5950 6000 5900
test
##       Oct  Nov  Dec
## 2024 6050 6150 6300
# Membuat ramalan naive untuk 3 bulan data uji
forecast_naive <- rep(tail(train, 1), length(test))

forecast_naive
## [1] 5900 5900 5900
# Membuat tabel hasil ramalan
aktual <- as.numeric(test)
ramalan <- as.numeric(forecast_naive)

error <- aktual - ramalan

hasil <- data.frame(
  Bulan = c("Oktober 2024", "November 2024", "Desember 2024"),
  Aktual = aktual,
  Ramalan = ramalan,
  Error = error
)

hasil
##           Bulan Aktual Ramalan Error
## 1  Oktober 2024   6050    5900   150
## 2 November 2024   6150    5900   250
## 3 Desember 2024   6300    5900   400
# Menghitung Mean Error (ME)
ME <- mean(error)

# Menghitung Mean Absolute Error (MAE)
MAE <- mean(abs(error))

# Menghitung Mean Squared Error (MSE)
MSE <- mean(error^2)

# Menghitung Root Mean Squared Error (RMSE)
RMSE <- sqrt(MSE)

# Menghitung Mean Absolute Percentage Error (MAPE)
MAPE <- mean(abs(error / aktual)) * 100

# Menampilkan hasil evaluasi
evaluasi <- data.frame(
  ME = ME,
  MAE = MAE,
  MSE = MSE,
  RMSE = RMSE,
  MAPE = MAPE
)

evaluasi
##         ME      MAE      MSE     RMSE     MAPE
## 1 266.6667 266.6667 81666.67 285.7738 4.297862

Interpretasi

Data latih terdiri dari 21 observasi pertama sampai September 2024, sedangkan 3 observasi terakhir digunakan sebagai data uji. Hasil ramalan naif untuk Oktober–Desember 2024 adalah Rp5.900/kg, sedangkan nilai aktualnya meningkat dari Rp6.050 hingga Rp6.300/kg. Nilai ME dan MAE sebesar 266,67, RMSE sebesar 285,77, dan MAPE sebesar 4,30%. Pada hasil ramalan terlihat bahwa nilai ramalan tetap 5.900 untuk ketiga bulan, sedangkan harga aktual terus meningkat. Artinya, metode naif menghasilkan kesalahan ramalan yang relatif kecil dengan MAPE sebesar 4,30%, tetapi belum mampu mengikuti kenaikan harga GKP pada tiga bulan terakhir.

Secara keseluruhan, metode peramalan naif belum mampu mengikuti tren kenaikan harga GKP pada periode uji karena hasil ramalannya tetap sebesar Rp5.900/kg, sehingga terjadi underestimate. Namun, dengan nilai MAPE sebesar 4,30%, akurasi ramalan masih tergolong sangat baik.