Pada tugas ini dilakukan analisis sederhana terhadap data harga Gabah Kering Panen (GKP) di tingkat petani Kabupaten Serang periode Januari 2023 hingga Desember 2024. Analisis meliputi pembuatan plot deret waktu, transformasi logaritma, differencing, serta evaluasi ramalan menggunakan metode naif.
Data yang digunakan merupakan harga gabah kering panen (GKP) di tingkat petani Kabupaten Serang periode Januari 2023 sampai Desember 2024 dalam satuan Rp/kg.
Data tahun 2023 terdiri dari nilai 5.200, 5.150, 5.300, 5.400, 5.250, 5.350, 5.450, 5.500, 5.400, 5.550, 5.600, dan 5.700.
Data tahun 2024 terdiri dari nilai 5.650, 5.700, 5.800, 5.900, 5.750, 5.850, 5.950, 6.000, 5.900, 6.050, 6.150, dan 6.300.
Pengolahan data dilakukan menggunakan RStudio.
Pertanyaan:
Data dimasukkan ke dalam R kemudian dibuat menjadi objek
ts. Karena data yang digunakan merupakan data bulanan, maka
frekuensi yang digunakan adalah 12.
gkp <- 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
)
gkp_ts <- ts(
gkp,
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
Selanjutnya dibuat plot untuk melihat pola harga GKP selama periode pengamatan.
plot(
gkp_ts,
type = "o",
pch = 16,
col = "#D88195",
lwd = 2,
main = "Harga Gabah Kering Panen Kabupaten Serang",
xlab = "Tahun",
ylab = "Harga (Rp/kg)"
)
grid()
Berdasarkan plot, harga GKP secara umum menunjukkan kecenderungan meningkat dari tahun 2023 sampai tahun 2024. Meskipun terdapat beberapa penurunan pada bulan tertentu, pola keseluruhan data menunjukkan adanya tren naik.
Transformasi logaritma dilakukan untuk membantu menstabilkan variansi data. Transformasi yang digunakan adalah logaritma natural.
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
Perbandingan antara data asli dan data setelah transformasi logaritma ditampilkan melalui plot berikut.
par(mfrow = c(1, 2))
plot(
gkp_ts,
type = "o",
pch = 16,
col = "#D88195",
main = "Data Asli",
xlab = "Tahun",
ylab = "Harga (Rp/kg)"
)
plot(
log_gkp,
type = "o",
pch = 16,
col = "#C96F86",
main = "Hasil Transformasi Log",
xlab = "Tahun",
ylab = "Log Harga"
)
par(mfrow = c(1, 1))
Dari hasil plot, data setelah transformasi logaritma masih menunjukkan kecenderungan meningkat. Hal ini karena transformasi logaritma digunakan untuk membantu menstabilkan variansi, bukan untuk menghilangkan tren.
Setelah dilakukan transformasi logaritma, langkah berikutnya adalah melakukan differencing tingkat pertama.
Rumus yang digunakan adalah:
\[ W_t = \log(Z_t) - \log(Z_{t-1}) \]
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
Hasil differencing kemudian divisualisasikan menggunakan plot.
plot(
diff_log_gkp,
type = "o",
pch = 16,
col = "#D88195",
lwd = 2,
main = "Differencing Pertama Data Log GKP",
xlab = "Tahun",
ylab = "Differencing Log"
)
grid()
Sesuai soal, 21 observasi pertama digunakan sebagai data latih dan 3 observasi terakhir sebagai data uji. Ramalan dilakukan menggunakan metode naif, yaitu menggunakan nilai terakhir dari data latih sebagai ramalan untuk periode berikutnya.
train <- head(gkp, 21)
test <- tail(gkp, 3)
naive_forecast <- rep(tail(train, 1), 3)
hasil_ramalan <- data.frame(
Bulan = c(
"Oktober 2024",
"November 2024",
"Desember 2024"
),
Aktual = test,
Ramalan = naive_forecast
)
hasil_ramalan
## Bulan Aktual Ramalan
## 1 Oktober 2024 6050 5900
## 2 November 2024 6150 5900
## 3 Desember 2024 6300 5900
Hasil ramalan naif:
| Bulan | Aktual | Ramalan |
|---|---|---|
| Oktober 2024 | 6.050 | 5.900 |
| November 2024 | 6.150 | 5.900 |
| Desember 2024 | 6.300 | 5.900 |
Selanjutnya, error dan metrik evaluasi dihitung menggunakan ME, MAE, MSE, RMSE, dan MAPE.
error <- test - naive_forecast
ME <- mean(error)
MAE <- mean(abs(error))
MSE <- mean(error^2)
RMSE <- sqrt(MSE)
MAPE <- mean(abs(error / test)) * 100
hasil_metrik <- data.frame(
Metrik = c("ME", "MAE", "MSE", "RMSE", "MAPE"),
Nilai = c(ME, MAE, MSE, RMSE, MAPE)
)
hasil_metrik
## Metrik Nilai
## 1 ME 266.666667
## 2 MAE 266.666667
## 3 MSE 81666.666667
## 4 RMSE 285.773803
## 5 MAPE 4.297862
Hasil evaluasi ramalan:
| Metrik | Hasil |
|---|---|
| ME | 266,67 |
| MAE | 266,67 |
| MSE | 81.666,67 |
| RMSE | 285,77 |
| MAPE | 4,30% |
Hasil tersebut menunjukkan bahwa ramalan naif menghasilkan MAPE sebesar 4,30%, dengan ME dan MAE sebesar 266,67.
Berdasarkan analisis yang telah dilakukan, harga GKP Kabupaten Serang periode Januari 2023 sampai Desember 2024 menunjukkan kecenderungan meningkat. Transformasi logaritma digunakan untuk membantu menstabilkan variansi, sedangkan differencing tingkat pertama digunakan untuk mengurangi tren.
Setelah dilakukan differencing pada data hasil transformasi logaritma, pola tren sudah tidak terlihat dengan jelas sehingga differencing pertama cukup untuk mengurangi tren pada data.
Pada ramalan naif dengan 21 observasi sebagai data latih dan 3 observasi sebagai data uji diperoleh ME sebesar 266,67, MAE sebesar 266,67, MSE sebesar 81.666,67, RMSE sebesar 285,77, dan MAPE sebesar 4,30%.
Secara keseluruhan, hasil evaluasi menunjukkan bahwa ramalan naif memiliki rata-rata kesalahan sebesar 4,30% berdasarkan MAPE.