Overview

Pendidikan sudah sepatutnya dinikmati oleh setiap manusia, termasuk di Indonesia. Semenjak kemerdekaan RI tahun 1945, Pemerintah terus mengupayakan pemberantasan buta huruf bagi seluruh warganya dengan meningkatkan kualitas pendidikan. Indikator yang dapat menunjukkan keberhasilan tersebut yaitu lama rata-rata penduduk menempuh pendidikan formal.

Pemerintah pada tahun 1995 mengeluarkan kebijakan wajar (wajib belajar) 9 tahun dimana setiap warga diharuskan mengenyam pendidikan formal selama 9 tahun (SD dan SMP/Sederajat) dan pemerintah wajib memfasilitasinya dengan target yaitu 95% (Referensi).

Kemudian kebijakan tersebut ditingkatkan menjadi wajar (wajib belajar) 12 tahun pada tahun 2015 dengan ditambahkannya jenjang pendidikan SMA/Sederajat sebagai pendidikan yang harus ditempuh (Referensi).

Library and Setup

library(readr) # Untuk read data csv
library(tidyverse) # Untuk data pre-processing
library(ggthemes) # Ekspansi tema ggplot2
library(padr) # Untuk padding data menjadi format time series
library(imputeTS)
library(forecast) # Untuk forecasting time series
library(TSstudio) # Untuk menampilkan komparasi hasil forecast

Data Preparation

Data Input

Dataset didapatkan dari website Our World in Data yang terdiri atas data lama rata rata penduduk di suatu negara dapat menempuh pendidikan formal serta target pemerintah dalam meningkatkan lamanya pendidikan formal.

edu <- read_csv("mean-years-of-schooling-long-run.csv")
expect <- read_csv("expected-years-of-schooling.csv")

Setiap dataset yang didapatkan memiliki 4 buah kolom, yaitu kolom Negara, Kode Negara, Tahun Datum serta nilai rataan sekolah penduduk di negara tersebut di tahun tertentu.

Data Wrangling

edu
expect

Informasi yang didapatkan dari dataset mentah kemudian dilakukan filtering dengan beberapa ketentuan berikut :

  1. Data yang diambil hanya data yang berasal dari Indonesia saja.
  2. Data ekspetasi lama sekolah penduduk dimulai dari tahun 1990 sehingga data yang diambil perlu disesuaikan yaitu dengan melakukan filter kedua dataset dan diambil dari tahun 1990 saja.
edufilter <- edu %>% 
   filter(Code == "IDN" & Year >= 1990) %>% 
   select(-Entity, -Code) %>% 
   mutate(Date = as.Date(as.character(Year), format = "%Y")) %>% 
   select(-Year) %>% 
   rename(`Years of Schooling` = `Average Total Years of Schooling`) %>% 
   mutate(Category = "Real Data")

expectfilter <- expect %>% 
   filter(Code == "IDN" & Year >= 1990) %>% 
   select(-Entity, -Code) %>% 
   mutate(Date = as.Date(as.character(Year), format = "%Y")) %>% 
   select(-Year) %>% 
   rename(`Years of Schooling` = `Expected Years of Schooling`) %>% 
   mutate(Category = "Expectation")

head(edufilter)

Fastlook Data Comparation

Untuk melihat komparasi kedua dataset maka dilakukan visualisasi data terlebih dahulu. Selain itu dilakukan pula Exploratory Data Analysis (EDA) guna melihat kesiapan data dalam melakukan forecasting kedepannya.

Kedua dataset digabungkan terlebih dahulu ke dalam suatu dataframe yang sama.

df <- rbind(edufilter, expectfilter)

Kemudian dataframe divisualisasikan untuk dikomparasikan.

ggplot(data = df, mapping = aes(x = Date, y = `Years of Schooling`)) +
   geom_line(aes(col = Category), lwd = 1.2) +
   geom_point() +
   labs(title = "Years of Schooling Data : Real vs Expectation",
        x = "Year",
        y = "Years of Schooling") +
   theme_update()

Dapat dilihat melalui grafik di atas bahwa upaya pemerintah dalam meningkatkan kualitas pendidikan melalui nilai rataan sekolah penduduk masih jauh di bawah ekspektasi yang dibangun oleh pemerintah itu sendiri. Program wajib belajar 9 tahun yang telah dicanangkan dan diterapkan sedari dulu belum menemui target penduduk dapat menempuh pendidikan 9 tahun secara rataan. Hal ini dapat menjadi bahan evaluasi bagi pemerintah pusat maupun daerah guna mendorong masyarakat untuk lebih melek pendidikan melalui berbagai macam kebijakan yang dapat diambil.

Pembentukan Format Time Series

Data yang harus disiapkan sesuai format time series hanyalah kolom tahun dan kolom yang ingin dilakukan forecasting. Oleh karenanya diperlukan penyesuaian kembali dari dataset yang telah dipreparasi sebelumnya, kemudian dibentuk kedalam format time series

edufilter2 <- edufilter %>% 
   select(-Category)
edufilter_ts <- ts(data = edufilter2$`Years of Schooling`, start = 1990, frequency = 1)

Selanjutnya dilakukan inspeksi format time series menggunakan fungsi autoplot.

autoplot(edufilter_ts)

Dapat dilihat melalui grafik autoplot di atas bahwa nilai rataan lama penduduk sekolah memiliki trend yang naik. Namun data tidak mengalami pengulangan bentuk (seasonal). Analisis tersebut dapat digunakan dalam melakukan model fitting dan forecasting selanjutnya bahwa data terdapat suatu trend namun tidak terdapat seasonality.

Forecasting

Modelling

Pembangunan model time series didasari oleh analisis sebelumnya bahwa data mengalami trend naik namun tidak terdapat seasonality.

Model forecast dibentuk menggunakan model ARIMA dengan menonaktifkan fungsi seasonalnya. Model ARIMA dipilih karena algoritma yang cukup sederhana serta hasil dari forecast yang memiliki nilai error yang cenderung kecil.

arima_edufilter <- auto.arima(edufilter_ts, seasonal = F)
summary(arima_edufilter)
## Series: edufilter_ts 
## ARIMA(0,2,1) 
## 
## Coefficients:
##           ma1
##       -0.7859
## s.e.   0.1503
## 
## sigma^2 estimated as 0.07181:  log likelihood=-2.62
## AIC=9.25   AICc=9.77   BIC=11.76
## 
## Training set error measures:
##                       ME      RMSE       MAE        MPE     MAPE     MASE
## Training set -0.02517237 0.2532085 0.1571789 -0.2515325 2.388478 0.671492
##                     ACF1
## Training set -0.07227156

Error yang dihasilkan pada pembuatan model di atas sangat kecil (2.4% Mean Absolute Percentage Error) sehingga sangat baik diterapkan pada data yang dimiliki.

Tuning Parameter Model

Meskipun memiliki performa yang sangat baik, peningkatan performa model dapat dilakukan melalui tahapan tuning parameter model yang telah dibangun sebelumnya. Hal ini dimaksudkan untuk mengecek kembali apakah terdapat parameter yang lebih baik dibanding dengan hasil pemilihat parameter model oleh sistem.

tsdisplay(x = diff(edufilter_ts))

Jika dilihat dari plot AFC dan PAFC, tidak terdapat lag yang melebihi batas nilai (cut-off) sehingga parameter model yang dilakukan oleh sistem memiliki kemungkinan besar merupakan parameter terbaik yang memiliki nilai error terkecil.

Plot Forecast

Plot forecast dilakukan dengan target Indonesia Emas 2045, sehingga forecasting dilakukan dalam 28 tahun kedepan.

# forecast using final model
eduforecast <- forecast(arima_edufilter, h = 28)

Kemudian hasil forecast dilakukan visualisasi.

autoplot(eduforecast)

Point Forecast pada grafik ditunjukkan oleh garis tebal dari waktu forecasting yaitu tahun 2018 hingga 2045. Kemudian terdapat pula Anomaly Forecast yang digambarkan oleh sebuah wilayah di sekitar Point Forecast. Point Forecast dapat dijadikan sebuat ekspetasi apakah di masa mendatang lamanya setiap penduduk memperoleh pendidikan formal mengalami peningkatan atau penurunan.

Melalui hasil forecast ini perlu disoroti oleh para pemangku kebijakan bahwa program wajib belajar 9 tahun atau wajib belajar 12 tahun masih harus ditingkatkan kembali. Hasil forecast menunjukan bahwa wajib belajar 9 tahun baru dapat diperoleh pada tahun 2032 dan wajib belajar 12 tahun diperoleh diatas tahun 2045.

Asumsi

Beberapa asumsi harus dipenuhi agar forecasting yang telah dilakukan dapat memiliki tingkat keakuratan yang tinggi serta tidak mengalami Bias Forecast. Asumsi yang perlu dipenuhi yaitu terkait dengan autokorelasi serta normalitas data.

No Autocorrelation

Asumsi autokorelasi digunakan untuk melihat apakah terjadi korelasi antara suatu periode t dengan periode sebelumnya (t -1) pada data awal serta data hasil forecast. Salah satu cara pengujian asumsi ini yaitu dengan melakukan visualisasi melalui plot acf dengan menggunakan fungsi acf().

acf(arima_edufilter$residuals)

Asumsi no-autocorrelation terpenuhi pada studi forecast yang telah dilakukan. Hal ini ditujukkan oleh tidak adanya Lag yang melewati batas nilai ACF.

Normalitas Residual

Asumsi normalitas residual dapat diketahui dengan menggunakan shapiro-wilk test dengan menggunakan fungsi shapiro.test.

shapiro.test(x = eduforecast$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  eduforecast$residuals
## W = 0.77127, p-value = 3.462e-05

Berdasarka uji normalitas residual di atas dapat disimpulkan bahwa residual yang dihasilkan menyebar secara normal (p-value dibawah 0.05). Dengan begitu, asumsi normalitas residual dapat dipenuhi.

Konklusi

Hasil forecast yang dibentuk menujukkan adanya peningkatan lamanya penduduk Indonesia menempuh pendidikan formal namun dapat dikatakan tidak mengalami peningkatan yang signifikan. Sudah menjadi barang tentu pendidikan di Indonesia menjadi prioritas demi pembangunan sumber daya manusia yang baik sesuai amanat Pancasila dan UUD1945.

Sungguh menjadi kebanggan bagi seluruh rakyat serta pemerintah Indonesia jika seluruh penduduk dapat merasakan jenjang pendidikan yang layak. Melalui report ini penulis mengajak seluruh pembaca untuk tetap memperhatikan lingkungan sekitar dan peduli terhadap pendidikan Indonesia. Indonesia Emas 2045 tidak akan pernah kita raih jika tidak pernah ada sinergitas antara kebijakan yang ditempuh oleh pemerintah dengan seluruh elemen masyarakat.

Semoga Tuhan Yang Maha Esa merahmati kebaikan kita semua. Aamiin.