Abstrak

Penelitian ini bertujuan untuk menganalisis faktor-faktor yang memengaruhi Rata-Rata Lama Sekolah (RLS) di Provinsi Jawa Barat dengan mempertimbangkan dependensi spasial antar kabupaten/kota. Ketergantungan spasial merupakan fenomena di mana nilai suatu variabel pada satu wilayah dipengaruhi oleh kondisi wilayah di sekitarnya. Pengabaian efek ini dapat menghasilkan estimasi regresi yang bias dan mengurangi validitas hasil analisis.

Data yang digunakan meliputi indikator ekonomi, sosial, dan pendidikan, yaitu Pendapatan Asli Daerah (PAD), Dana Alokasi Umum (DAU) Pendidikan, Produk Domestik Regional Bruto (PDRB), Tingkat Kemiskinan, Rasio Guru dan Murid di berbagai jenjang pendidikan, serta Angka Partisipasi Murni (APM) SD, SMP, SMA, dan Perguruan Tinggi.

Pendekatan metodologis menggunakan Spatial Durbin Error Model (SDEM), yang mampu menangkap efek langsung dan efek tidak langsung (spillover) melalui komponen error spasial. Hasil estimasi menunjukkan bahwa PDRB, DAU Pendidikan, Rasio Guru/Murid SD dan SMA, APM SD, APM SMP, APM SMA, dan APM Perguruan Tinggi berpengaruh signifikan terhadap RLS, dengan arah pengaruh yang bervariasi. Parameter error spasial (λ) signifikan, menandakan adanya pengaruh tidak langsung dari wilayah tetangga terhadap capaian pendidikan.

Temuan ini menegaskan bahwa peningkatan ekonomi daerah, efektivitas alokasi dana pendidikan, serta pemerataan kualitas tenaga pendidik dan partisipasi pendidikan menengah–tinggi berperan penting dalam memperpanjang RLS. Oleh karena itu, kebijakan pendidikan di Jawa Barat perlu diarahkan pada koordinasi antarwilayah, optimalisasi anggaran pendidikan, dan strategi pemerataan kualitas pendidikan untuk memaksimalkan dampak spasial secara regional.

BAB 1. PENDAHULUAN

1.1 Latar Belakang

Pendidikan merupakan salah satu indikator utama dalam mengukur keberhasilan pembangunan suatu daerah. Melalui pendidikan, kualitas sumber daya manusia dapat ditingkatkan sehingga mampu mendorong pertumbuhan ekonomi dan kesejahteraan masyarakat. Salah satu indikator penting dalam bidang pendidikan adalah Rata-rata Lama Sekolah (RLS), yang menggambarkan tingkat capaian pendidikan penduduk berusia 15 tahun ke atas dalam satuan tahun. RLS tidak hanya mencerminkan keberhasilan sistem pendidikan formal, tetapi juga menjadi cerminan dari tingkat kesejahteraan, kesetaraan, dan akses pendidikan di suatu wilayah.

Di Provinsi Jawa Barat, ketimpangan pendidikan antar kabupaten/kota masih menjadi isu penting dalam pembangunan daerah. Berdasarkan data Badan Pusat Statistik (BPS) Provinsi Jawa Barat tahun 2024, meskipun provinsi ini mencatat pertumbuhan ekonomi sebesar 4,95%, kesenjangan RLS antarwilayah masih terlihat jelas. Kota Bekasi mencatat RLS tertinggi sebesar 11,79 tahun, sedangkan Kabupaten Indramayu memiliki RLS terendah yaitu 6,95 tahun. Kota Bandung memiliki RLS sebesar 9,15 tahun, sementara Kabupaten Garut dan Kabupaten Cianjur masing-masing mencatat 7,34 tahun dan 7,33 tahun.

Perbedaan yang cukup signifikan ini menunjukkan bahwa kemajuan pembangunan tidak selalu diikuti dengan pemerataan kualitas pendidikan. Beberapa daerah perkotaan seperti Bekasi dan Bandung cenderung memiliki akses yang lebih baik terhadap fasilitas pendidikan, sedangkan daerah perdesaan masih menghadapi berbagai kendala seperti keterbatasan infrastruktur, tenaga pendidik, serta kemampuan ekonomi masyarakat.

Faktor-faktor ekonomi dan sosial diketahui memiliki keterkaitan erat dengan capaian pendidikan. Pendapatan Asli Daerah (PAD) misalnya, memiliki pengaruh positif terhadap peningkatan lama sekolah karena daerah dengan PAD yang tinggi mampu menyediakan fasilitas pendidikan yang lebih memadai (Farizki, 2022). Sebaliknya, tingkat kemiskinan berpengaruh negatif terhadap lama sekolah karena keterbatasan kemampuan keluarga untuk membiayai pendidikan anak-anaknya (Efficient Journal, 2020).
Selain itu, Angka Partisipasi Murni (APM) juga berperan positif dalam meningkatkan RLS, karena semakin banyak anak usia sekolah yang aktif bersekolah, semakin tinggi pula capaian pendidikan penduduk secara rata-rata. Sementara itu, rasio guru terhadap murid memiliki pengaruh negatif terhadap kualitas pembelajaran; semakin tinggi rasio tersebut, semakin besar beban pengajaran guru, yang pada akhirnya dapat menurunkan capaian lama sekolah (Stochastic Frontier Analysis, 2013).
Adapun Dana Alokasi Umum (DAU) sektor pendidikan, meskipun berpotensi memengaruhi penyediaan fasilitas pendidikan dan mutu layanan, masih memerlukan kajian lebih lanjut karena literatur empiris yang mendukungnya belum banyak ditemukan.

Melihat fenomena tersebut, pendekatan analisis spasial menjadi relevan untuk digunakan. Secara teoritis, kondisi sosial dan ekonomi suatu daerah tidak berdiri sendiri, melainkan dapat dipengaruhi oleh daerah sekitarnya. Misalnya, kemajuan pendidikan di satu kabupaten dapat memberikan efek limpahan (spillover effect) bagi kabupaten tetangganya melalui mobilitas tenaga kerja, interaksi sosial, dan penyebaran kebijakan. Oleh karena itu, penggunaan model spasial lanjutan menjadi penting untuk menangkap kompleksitas hubungan antarwilayah tersebut.
Pendekatan ini diharapkan mampu memberikan gambaran yang lebih akurat mengenai faktor-faktor yang memengaruhi rata-rata lama sekolah di Jawa Barat serta pola keterkaitan spasial yang terjadi antarwilayahnya.

1.2 Identifikasi Masalah

Dalam analisis data spasial, asumsi kemandirian antarobservasi sering kali tidak terpenuhi karena adanya keterkaitan geografis antarwilayah yang berdekatan. Hal ini juga terjadi pada kasus Rata-rata Lama Sekolah (RLS) di Provinsi Jawa Barat, di mana hasil eksplorasi awal menunjukkan adanya pola spasial yang tidak acak. Beberapa wilayah dengan nilai RLS tinggi cenderung berdekatan dengan wilayah yang juga memiliki nilai RLS tinggi, sedangkan wilayah dengan RLS rendah berkelompok dengan wilayah lain yang memiliki karakteristik serupa. Pola pengelompokan tersebut mengindikasikan adanya autokorelasi spasial pada variabel dependen (Y).

Tidak hanya pada variabel RLS, indikasi autokorelasi spasial juga ditemukan pada beberapa variabel independen (X) seperti Pendapatan Asli Daerah (PAD), tingkat kemiskinan, dan Produk Domestik Regional Bruto (PDRB). Hal ini menunjukkan bahwa kondisi sosial-ekonomi di suatu kabupaten/kota berpotensi dipengaruhi oleh kondisi di wilayah sekitarnya, sehingga hubungan antarvariabel tidak dapat sepenuhnya dijelaskan dengan pendekatan regresi konvensional yang mengasumsikan independensi spasial.

Lebih lanjut, hasil estimasi menggunakan model Ordinary Least Squares (OLS) menunjukkan adanya autokorelasi spasial pada residual. Artinya, kesalahan prediksi model di satu wilayah cenderung berkorelasi dengan wilayah lain di sekitarnya. Kondisi ini menandakan bahwa model OLS tidak cukup mampu menangkap pola keterkaitan antarwilayah, sehingga menghasilkan estimasi parameter yang kurang efisien dan berpotensi bias.

Hasil uji Lagrange Multiplier (LM Test) memperkuat temuan tersebut, di mana nilai statistik uji menunjukkan signifikansi baik pada komponen lag variabel dependen (spatial lag Y) maupun komponen kesalahan spasial (spatial error). Dengan demikian, diperlukan penggunaan model regresi spasial lanjutan seperti Spatial Lag Model (SLM), Spatial Error Model (SEM), Spatial Durbin Model (SDM), atau Spatial Autoregressive Combined (SAC) agar dapat menangkap interaksi spasial secara lebih akurat dan menggambarkan hubungan antarvariabel secara komprehensif.

1.3 Tujuan Penelitian

Penelitian ini memiliki tujuan utama untuk memahami faktor-faktor yang memengaruhi Rata-rata Lama Sekolah (RLS) di kabupaten/kota di Provinsi Jawa Barat dengan mempertimbangkan adanya keterkaitan spasial antarwilayah. Melalui pendekatan ini, diharapkan dapat diperoleh gambaran yang lebih komprehensif mengenai hubungan antara aspek sosial, ekonomi, dan pendidikan di daerah tersebut.

Secara lebih rinci, tujuan penelitian ini adalah:

  1. Mengidentifikasi faktor-faktor yang memengaruhi rata-rata lama sekolah di Jawa Barat.
    Penelitian ini bertujuan untuk mengetahui sejauh mana variabel-variabel ekonomi dan sosial, seperti Pendapatan Asli Daerah (PAD), tingkat kemiskinan, Angka Partisipasi Murni (APM), serta rasio guru terhadap murid, berperan dalam menentukan capaian RLS antar kabupaten/kota.

  2. Menguji keberadaan ketergantungan spasial antarwilayah.
    Penelitian ini berupaya mendeteksi apakah terdapat hubungan spasial antara satu wilayah dengan wilayah sekitarnya, baik dalam bentuk pengaruh langsung (melalui nilai RLS di wilayah lain) maupun tidak langsung (melalui pengaruh kesalahan model). Dengan demikian, pola spatial spillover dalam konteks pendidikan dapat dipahami secara empiris.

  3. Menganalisis dan membandingkan kinerja beberapa model regresi spasial lanjutan.
    Penelitian ini juga bertujuan untuk membandingkan hasil estimasi dari beberapa model spasial, seperti Spatial Lag Model (SLM), Spatial Error Model (SEM), Spatial Durbin Model (SDM), dan Spatial Autoregressive Combined (SAC). Melalui perbandingan tersebut, diharapkan dapat diidentifikasi model terbaik yang paling sesuai untuk menjelaskan variasi RLS antarwilayah di Jawa Barat.

Dengan tercapainya tujuan-tujuan tersebut, hasil penelitian ini diharapkan tidak hanya memberikan pemahaman yang lebih mendalam mengenai faktor-faktor yang memengaruhi lama sekolah, tetapi juga memberikan dasar empiris bagi perumusan kebijakan pembangunan pendidikan yang lebih merata dan berbasis spasial di Provinsi Jawa Barat.

1.4 Batasan Penelitian

Untuk menjaga fokus analisis dan memastikan hasil penelitian tetap relevan dengan tujuan yang telah ditetapkan, penelitian ini memiliki beberapa batasan yang perlu diperhatikan.

Pertama, wilayah studi dalam penelitian ini terbatas pada kabupaten dan kota di Provinsi Jawa Barat. Pemilihan Jawa Barat sebagai objek kajian didasarkan pada karakteristiknya sebagai provinsi dengan jumlah penduduk terbesar di Indonesia serta tingkat ketimpangan pendidikan antarwilayah yang cukup tinggi. Dengan demikian, hasil penelitian ini tidak secara langsung digeneralisasikan untuk provinsi lain, tetapi dapat menjadi acuan untuk studi komparatif di wilayah dengan karakteristik serupa.

Kedua, data yang digunakan dalam penelitian ini merupakan data tahun 2024. Pemilihan tahun tersebut bertujuan untuk menggambarkan kondisi terbaru terkait capaian pendidikan dan faktor-faktor yang memengaruhinya. Oleh karena itu, penelitian ini bersifat potret sesaat (cross-section) dan tidak menganalisis dinamika perubahan dari waktu ke waktu.

Ketiga, dalam analisis spasial, penelitian ini hanya menggunakan empat model regresi spasial lanjutan, yaitu Spatial Lag Model (SLM), Spatial Error Model (SEM), Spatial Durbin Model (SDM), dan Spatial Autoregressive Combined (SAC). Keempat model ini dipilih karena dianggap mampu merepresentasikan berbagai bentuk ketergantungan spasial yang umum terjadi dalam data wilayah. Model lain seperti Spatial Panel Model atau Geographically Weighted Regression (GWR) tidak digunakan karena penelitian ini tidak mencakup dimensi waktu maupun variasi lokal secara geografis.

Keempat, penelitian ini tidak membahas efek waktu (cross-section only), sehingga tidak mempertimbangkan perubahan tren Rata-rata Lama Sekolah (RLS) dari tahun ke tahun. Analisis difokuskan pada pola keterkaitan spasial antarwilayah pada satu periode waktu tertentu.

Dengan batasan-batasan tersebut, penelitian ini diharapkan tetap memberikan hasil yang mendalam dan terfokus dalam memahami hubungan spasial antar kabupaten/kota di Jawa Barat terkait Rata-rata Lama Sekolah, serta menjadi dasar yang kuat bagi penelitian lanjutan yang melibatkan dimensi waktu atau model spasial yang lebih kompleks.

BAB 2. TINJAUAN PUSTAKA

2.1 Teori Spatial Dependence

Ketergantungan spasial merupakan fenomena di mana nilai suatu variabel pada suatu wilayah tidak sepenuhnya independen, melainkan dipengaruhi oleh nilai variabel yang terdapat pada wilayah tetangganya (Wiguna et al., 2022). Fenomena ini sangat penting dalam analisis data geospasial karena dapat memengaruhi hasil estimasi dan interpretasi model statistik. Secara umum, terdapat dua bentuk utama ketergantungan spasial, yaitu spatial lag dan spatial error (Novitasari et al., 2022).

Spatial lag muncul ketika nilai variabel dependen pada suatu wilayah secara langsung dipengaruhi oleh nilai variabel dependen di wilayah sekitarnya. Dalam model regresi, efek ini direpresentasikan dengan menambahkan komponen WY ke persamaan regresi, sehingga persamaannya menjadi:

\[Y = \rho WY + X\beta + \varepsilon.\]

Di mana W adalah matriks bobot ruang yang menunjukkan kedekatan atau keterhubungan antarwilayah, mengukur kekuatan pengaruh lag, dan adalah kesalahan acak. Model spatial lag memungkinkan peneliti menangkap efek spillover, yaitu pengaruh lintas wilayah yang dapat terjadi akibat interaksi sosial, ekonomi, atau faktor pendidikan.

Sementara itu, spatial error mengacu pada autokorelasi yang terdapat pada komponen kesalahan model, bukan pada variabel dependen itu sendiri. Model ini menuliskan kesalahan sebagai:

\[\varepsilon = \lambda W \varepsilon + u,\]

dengan mengukur intensitas autokorelasi pada residual, u adalag error i.i.d., dan W kembali matriks bobot ruang (spatial weight matrix). Spatial error digunakan untuk menangkap penyebaran faktor-faktor tak terobservasi yang memiliki pola spasial. Jika faktor-faktor ini diabaikan, residual OLS akan menunjukkan pola yang terstruktur, dan model spatial error membantu memperbaiki bias tersebut.

Kedua bentuk ketergantungan ini sangat penting karena mengabaikannya dapat menghasilkan koefisien regresi yang bias, standar error yang terlalu kecil, dan keputusan kebijakan yang menyesatkan. Pemilihan antara spatial lag, spatial error, atau kombinasi keduanya bergantung pada apakah penyebaran terjadi pada variabel dependen secara langsung atau melalui faktor-faktor tak terukur yang tercermin pada residual. Jika spatial dependence diabaikan, estimasi koefisien OLS menjadi tidak efisien dan standar error dapat direduksi secara artifisial, sehingga uji signifikansi menjadi menyesatkan (Mar’ah et al., 2025). Model OLS yang mengabaikan autokorelasi spasial mungkin menampilkan koefisien X yang signifikan, padahal efek tersebut dipengaruhi oleh pola spasial yang tidak terkontrol. Sebaliknya, model spatial error mengoreksi korelasi residual dan memberikan estimasi yang lebih realistis (Eryando et al., 2022)

Dengan demikian, identifikasi dan penanganan ketergantungan spasial menjadi prasyarat penting sebelum menafsirkan hubungan antara variabel independen (X) dan rata-rata lama sekolah (Y).

2.2 Autokorelasi Spasial

Autokorelasi spasial merujuk pada korelasi yang muncul antara nilai suatu variabel dengan nilai variabel yang sama di lokasi-lokasi lain, yang disebabkan oleh kedekatan atau hubungan spasial antar pengamatan. Dengan kata lain, autokorelasi spasial menunjukkan sejauh mana nilai suatu variabel pada satu wilayah dipengaruhi oleh nilai variabel di wilayah sekitarnya. Secara matematis, autokorelasi spasial dapat dinyatakan melalui momen kovarians:

\[cov[y_i, y_j] = E[y_i y_j] – E[y_i] \cdot E[y_j] \neq 0\] di mana i dan j merujuk pada pengamatan individual (lokasi), dan yi adalah nilai variabel acak yang diamati pada lokasi i. Salah satu indeks yang paling umum digunakan untuk mengukur autokorelasi spasial global adalah Moran’s I, yang dirumuskan sebagai:

\[I = \frac{n \sum_{i} \sum_{j} w_{ij} (Y_i - \bar{Y})(Y_j - \bar{Y})}{(\sum_{i \neq j} w_{ij}) \sum_{i} (Y_i - \bar{Y})^2}\] dimana

  • n adalah jumlah wilayah

  • \(Y_{i}\) adalah nilai variabel yang diamati di wilayah i,

  • \(\overline{Y}\) adalah rata-rata dari nilai variabel, dan

  • \(w_{ij}\) adalah elemen matriks pembobot spasial (W) yang menunjukkan kedekatan spasial antara wilayah i dan j dengan \(w_{ii}\)= 0.

Matriks pembobot spasial (W) merupakan komponen penting dalam analisis autokorelasi, karena menentukan struktur ketetanggaan antarwilayah. Elemen \(w_{ij}\) bernilai 1 jika wilayah i dan j bertetangga, dan 0 jika tidak bertetangga. Matriks ini biasanya distandarisasi baris sehingga \[\sum{j} w{ij} = 1\] untuk setiap i, sehingga efek spatial lag dapat diinterpretasikan sebagai rata-rata tertimbang dari nilai-nilai tetangga. Nilai Moran’s I umumnya berada di kisaran -1 hingga +1. Nilai positif (I > 0) menandakan autokorelasi spasial positif, yaitu wilayah dengan nilai tinggi dikelilingi oleh wilayah dengan nilai tinggi, dan wilayah dengan nilai rendah dikelilingi oleh wilayah dengan nilai rendah. Nilai Moran’s I mendekati 0 (I0) mengindikasikan pola spasial yang acak (random) tanpa keteraturan spasial, di mana tidak ada pola sistematis dalam distribusi spasial variabel (tidak ada autokorelasi spasial). Sementara nilai negatif (I < 0) menunjukkan autokorelasi spasial negatif, di mana wilayah dengan nilai tinggi cenderung dikelilingi wilayah dengan nilai rendah, atau sebaliknya, yang dapat diartikan sebagai pola dispersi atau kompetisi spasial. Autokorelasi spasial dapat terjadi pada variabel dependen maupun residual model regresi. Jika terdapat pada variabel dependen atau independen, hal ini menunjukkan adanya dependensi spasial substantif dalam data, sehingga model yang digunakan perlu mengakomodasi efek ini, misalnya melalui spatial lag model atau Spatial Durbin Model. Mengabaikannya dapat menyebabkan estimasi koefisien bias dan inkonsisten. Autokorelasi pada residual regresi merupakan indikator yang lebih kritis karena menandakan pelanggaran asumsi independensi error dalam model OLS. Dalam konteks regresi, kondisi ini dapat dinyatakan sebagai:

\[cov[\varepsilon_i, \varepsilon_j] \neq 0, untuk \ i \neq j\] Dalam praktiknya, pengujian autokorelasi spasial residual dilakukan sebagai bagian dari diagnostik spesifikasi model setelah estimasi OLS. Jika ditemukan autokorelasi yang signifikan, model perlu direspesifikasi, misalnya dengan menggunakan Spatial Error Model (SEM) atau model spasial lain yang lebih kompleks, agar estimasi menjadi konsisten dan efisien.

2.3 Teori Spatial Dependence

Dalam analisis ekonometrika spasial, model dasarnya adalah Ordinary Least Squares (OLS), yang memiliki asumsi bahwa setiap observasi bersifat independen satu sama lain. Pada konteks spasial, OLS memodelkan hubungan antara variabel dependen Y dan sejumlah variabel independen X1, X2, …, Xk tanpa mempertimbangkanposisi geografis masing-masing unit analisis. Bentuk umum model OLS adalah:

\[Y = \beta_0 + \beta_1X_1 + \beta_2X_2 + ... + \beta_kX_k + \varepsilon\] Namun, asumsi independensi ini sering tidak terpenuhi dalam data wilayah. Fenomena ekonomi, sosial, maupun pendidikan cenderung menunjukkan pola non-acak di ruang, sehingga wilayah yang berdekatan sering memiliki karakteristik serupa akibat interaksi sosial, kebijakan publik, mobilitas tenaga kerja, dan kesamaan kondisi geografis. Apabila terdapat dependensi spasial (spatial dependence) baik pada variabel maupun pada komponen error maka penggunaan OLS menjadi tidak tepat. Dua sumber utama dependensi spasial adalah efek lag spasial dan efek error spasial. Efek lag spasial terjadi ketika nilai variabel dependen di suatu wilayah dipengaruhi secara langsung oleh nilai dependen di wilayah sekitarnya. Sebaliknya, efek error spasial muncul ketika kesalahan atau faktor tak teramati menunjukkan korelasi spasial, menandakan adanya variabel yang tidak terukur namun memengaruhi beberapa wilayah secara simultan. Ketika kedua jenis efek ini muncul secara bersamaan, estimasi OLS akan menghasilkan koefisien yang bias dan tidak efisien, serta residual yang menunjukkan autokorelasi spasial positif. Hal ini menandakan bahwa OLS gagal menangkap interaksi antarwilayah secara akurat. Oleh karena itu, diperlukan model spatial econometrics, yang secara eksplisit memperhitungkan ketergantungan spasial untuk memperoleh estimasi yang lebih tepat. Beberapa model spasial yang umum digunakan antara lain: Spatial Autoregressive Model (SAR), Spatial Error Model (SEM), Spatial Durbin Model (SDM), Spatial Durbin Error Model (SDEM), Spatial Autoregressive Combined Model (SAC), dan General Nesting Spatial Model (GNS). Model-model ini memungkinkan analisis yang lebih komprehensif, baik untuk efek langsung antarwilayah maupun efek spillover dan distribusi error yang bersifat spasial. Berikut adalah penjelasan untuk masing-masing modelnya.

  1. Spatial Autoregressive (SAR) Model SAR memasukkan lag spasial dari variabel dependen ke dalam persamaan regresi. Dengan kata lain, nilai dependen di suatu wilayah dipengaruhi secara langsung oleh nilai dependen di wilayah tetangganya. Persamaan umumnya dapat dituliskan sebagai:

\[Y = \rho WY + X\beta + \varepsilon\]

Keterangan:

Y : Variabel dependen, yaitu Rata-rata Lama Sekolah (RLS) di masing-masing kabupaten/kota.

W : Matriks bobot spasial (spatial weight matrix), yang menunjukkan hubungan kedekatan antarwilayah (misalnya berbatasan langsung, atau berjarak dalam radius tertentu).

WY: Lag spasial dari variabel dependen, yaitu rata-rata tertimbang RLS di wilayah-wilayah tetangga.

\(\rho\): Koefisien lag spasial, mengukur seberapa besar pengaruh rata-rata lama sekolah di daerah tetangga terhadap daerah bersangkutan.

X: Matriks variabel independen.

\(\beta\):Vektor koefisien regresi, menunjukkan besarnya pengaruh masing-masing variabel X terhadap RLS.

\(\varepsilon\): Komponen error acak, diasumsikan identik dan independen.

Model SAR cocok digunakan ketika terdapat pengaruh langsung antarwilayah, misalnya daerah dengan RLS tinggi memengaruhi wilayah tetangganya melalui pertukaran sumber daya pendidikan atau kebijakan lokal.

  1. Spatial Error Model (SEM) Model SEM digunakan ketika pengaruh spasial muncul dari variabel yang tidak teramati tetapi memiliki pola spasial. Fokus model ini adalah menangkap autokorelasi pada komponen error, bukan variabel dependen. Persamaan model SEM adalah:

\[Y = X\beta + u, u = \lambda Wu + \varepsilon\] Keterangan: u : Error yang memiliki dependensi spasial. λ : Koefisien autokorelasi spasial pada error, menunjukkan seberapa kuat keterkaitan error antarwilayah. Wu : Lag spasial dari error, yaitu rata-rata kesalahan prediksi di wilayah tetangga. ε : Komponen error acak yang bersifat independen.

SEM relevan ketika faktor tak teramati yang memengaruhi RLS tersebar secara spasial, sehingga residual OLS menunjukkan pola yang terstruktur.

  1. Spatial Durbin Model (SDM)

SDM merupakan pengembangan dari SAR karena tidak hanya memasukkan lag spasial pada variabel dependen, tetapi juga pada variabel independen. Model ini mampu menangkap efek langsung dan efek tidak langsung (spillover) antarwilayah. Persamaannya:

\[Y = \rho WY + WX\theta + X\beta + \varepsilon\]

Keterangan: θ : Koefisien efek tidak langsung (spillover) dari variabel independen di wilayah sekitar.

Contohnya, peningkatan PAD atau DAU Pendidikan di satu daerah dapat berpengaruh pada RLS daerah tersebut sekaligus wilayah sekitarnya melalui pergerakan tenaga pengajar atau fasilitas pendidikan.

  1. Spatial Durbin Error Model (SDEM) SDEM memperluas SEM dengan menambahkan lag spasial pada variabel independen. Model ini sesuai ketika pengaruh antarwilayah berasal dari faktor penjelas (X) dan error secara bersamaan, tanpa ketergantungan langsung antarvariabel dependen. Persamaannya:

\[Y = X\beta + WX\Theta + u, u = \lambda Wu + \varepsilon\] 5. Spatial Autoregressive Combined Model (SAC) Model SAC menggabungkan efek lag spasial (SAR) dan error spasial (SEM). Model ini digunakan ketika terdapat interaksi langsung antarwilayah sekaligus variabel tak teramati yang berpola spasial. Persamaannya:

\[Y = \rho WY + X\beta + u, u = \lambda Wu + \varepsilon\]

6.General Nesting Spatial (GNS) Model GNS merupakan model paling umum karena menggabungkan semua kemungkinan dependensi spasial. Model ini bersifat nested terhadap model lain (SAR, SEM, SDM, SDEM, SAC) sehingga dapat disederhanakan jika beberapa parameter tidak signifikan. Persamaannya:

\[Y = \rho WY + WX\theta + X\beta + u, u = \lambda Wu + \varepsilon\]

GNS memungkinkan estimasi efek langsung, tidak langsung, dan total dari variabel independen terhadap RLS antarwilayah, sehingga memberikan gambaran paling komprehensif mengenai interaksi spasial di wilayah penelitian.

BAB 3.METODOLOGI PENELITIAN

3.1 Teori Spatial Dependence

Penelitian ini menggunakan data sekunder yang bersifat cross-section, yaitu data yang dikumpulkan dari berbagai kabupaten dan kota di Provinsi Jawa Barat untuk periode waktu yang sama. Pemilihan jenis data ini dilakukan karena penelitian berfokus pada analisis perbedaan antarwilayah dalam satu tahun tertentu, tanpa mempertimbangkan perubahan dari waktu ke waktu. Sumber utama data yang digunakan berasal dari Badan Pusat Statistik (BPS). Data diambil dari berbagai dokumen seperti Provinsi Jawa Barat dalam Angka 2024, Kabupaten/Kota dalam Angka 2024, serta publikasi tematik yang relevan, seperti laporan indikator sosial ekonomi dan pendidikan. Tahun pengambilan data ditetapkan tahun 2024, dengan pertimbangan bahwa tahun tersebut merupakan data terbaru dan paling representatif untuk menggambarkan kondisi terkini terkait capaian pendidikan dan faktor-faktor sosial ekonomi yang memengaruhinya. Selain itu, pemilihan tahun 2024 juga mempertimbangkan ketersediaan dan kelengkapan data pada seluruh kabupaten/kota di Provinsi Jawa Barat.

3.2 Unit Analisis Spasial

Unit analisis dalam penelitian ini mencakup 27 kabupaten/kota di Provinsi Jawa Barat. Pemilihan seluruh kabupaten/kota dimaksudkan agar analisis dapat menggambarkan variasi kondisi sosial dan ekonomi antarwilayah, khususnya dalam konteks pemerataan pendidikan. Secara umum, Provinsi Jawa Barat merupakan provinsi dengan jumlah penduduk terbesar di Indonesia, serta memiliki kontribusi signifikan terhadap perekonomian nasional. Meskipun pertumbuhan ekonomi Jawa Barat pada triwulan II tahun 2024 tercatat sebesar 4,95 persen (y-on-y), provinsi ini masih menghadapi tantangan dalam pemerataan kesejahteraan dan akses pendidikan antarwilayah (Badan Pusat Statistik Provinsi Jawa Barat, 2024). Dalam bidang pendidikan, terdapat 658.831 anak di Jawa Barat yang tercatat tidak bersekolah hingga akhir tahun 2024, menunjukkan bahwa ketimpangan akses pendidikan masih menjadi isu penting di provinsi ini (BPS Jawa Barat, 2024). Untuk wilayah perkotaan, seperti Kota Bandung, hanya sekitar 16,71 persen penduduk yang telah menyelesaikan pendidikan tinggi (S1 ke atas) pada akhir tahun 2024 (Katadata, 2025; BPS Kota Bandung, 2024). Kondisi ini mengindikasikan bahwa meskipun tingkat pendidikan di kota besar relatif lebih baik, persentase penduduk berpendidikan tinggi masih rendah dibandingkan dengan jumlah penduduk keseluruhan. Keragaman kondisi sosial-ekonomi antarwilayah ini menggambarkan adanya perbedaan yang cukup signifikan antara wilayah perkotaan dan pedesaan/pinggiran. Wilayah perkotaan cenderung memiliki capaian pendidikan dan ekonomi yang lebih tinggi dibandingkan wilayah pedesaan. Oleh karena itu, 27 kabupaten/kota di Jawa Barat memberikan variasi data yang memadai untuk menganalisis pengaruh faktor ekonomi dan sosial terhadap Rata-rata Lama Sekolah (RLS) serta mengidentifikasi pola keterkaitan spasial antarwilayah. Untuk menangkap hubungan keterkaitan antarwilayah tersebut, penelitian ini menggunakan matriks bobot spasial (W). Matriks ini dibangun dengan pendekatan contiguity-based (berbatasan langsung), meskipun pendekatan distance-based (berdasarkan jarak geografis) dapat digunakan sebagai alternatif. Pendekatan contiguity dipilih karena secara teoritis interaksi sosial, ekonomi, dan pendidikan lebih sering terjadi antarwilayah yang berbatasan secara fisik (Anselin, 1988; LeSage & Pace, 2009). Dalam penelitian ini, matriks bobot spasial dibangun menggunakan queen contiguity, di mana dua wilayah dianggap bertetangga apabila memiliki batas sisi atau sudut yang bersinggungan. Matriks W ini kemudian digunakan dalam pemodelan regresi spasial untuk menguji apakah nilai Rata-Rata Lama Sekolah (RLS) suatu wilayah dipengaruhi oleh RLS wilayah tetangga, serta apakah faktor-faktor independen pada wilayah sekitarnya memberikan efek spillover terhadap capaian pendidikan wilayah yang bersangkutan.

3.3 Variabel Penelitian

Penelitian ini menggunakan satu variabel dependen dan beberapa variabel independen yang mewakili faktor ekonomi dan sosial yang berpotensi memengaruhi rata-rata lama sekolah (RLS) di kabupaten/kota di Provinsi Jawa Barat. Setiap variabel diukur berdasarkan data sekunder dari Badan Pusat Statistik (BPS) tahun 2024.

3.3.1 Variabel Dependen (Y)

Rata-rata Lama Sekolah (RLS) Rata-rata Lama Sekolah menggambarkan rata-rata jumlah tahun yang telah ditempuh oleh penduduk berusia 15 tahun ke atas dalam menempuh pendidikan formal. Variabel ini diukur dalam satuan tahun dan digunakan sebagai indikator untuk menilai tingkat pendidikan penduduk di suatu wilayah (Badan Pusat Statistik, 2024). RLS dipilih sebagai variabel utama karena menjadi salah satu indikator Indeks Pembangunan Manusia (IPM) yang mencerminkan capaian pendidikan suatu daerah (UNDP, 2023).

3.3.2 Variabel Independen (X)

  1. Pendapatan Asli Daerah (PAD) Pendapatan Asli Daerah merupakan total penerimaan daerah yang berasal dari pajak daerah, retribusi, hasil pengelolaan kekayaan daerah yang dipisahkan, serta lain-lain pendapatan sah daerah. PAD diukur dalam miliar rupiah. Secara teori, semakin tinggi PAD menunjukkan semakin besar kemampuan fiskal daerah untuk menyediakan fasilitas pendidikan, yang dapat berdampak positif terhadap peningkatan RLS (Farizki, 2022).
  2. Dana Alokasi Umum (DAU) Pendidikan DAU Pendidikan merupakan bagian dari dana perimbangan pemerintah pusat yang dialokasikan ke daerah untuk mendukung penyelenggaraan layanan publik, termasuk sektor pendidikan. DAU Pendidikan diukur dalam miliar rupiah. Variabel ini digunakan untuk menilai sejauh mana dukungan fiskal pusat terhadap daerah dapat memengaruhi kualitas dan akses pendidikan (Kementerian Keuangan RI, 2023).
  3. Produk Domestik Regional Bruto (PDRB) PDRB menggambarkan nilai total barang dan jasa yang dihasilkan oleh seluruh unit ekonomi di suatu wilayah dalam periode tertentu. PDRB diukur dalam miliar rupiah (atas dasar harga konstan 2010). Semakin tinggi PDRB menunjukkan meningkatnya kesejahteraan ekonomi masyarakat yang berpotensi mendorong peningkatan partisipasi pendidikan (Suharyadi & Purwanto, 2018).
  4. Tingkat Kemiskinan Tingkat kemiskinan menunjukkan persentase penduduk dengan pengeluaran di bawah garis kemiskinan yang ditetapkan oleh BPS. Variabel ini diukur dalam persentase (%). Semakin tinggi tingkat kemiskinan di suatu wilayah, semakin rendah kemampuan masyarakat dalam membiayai pendidikan, sehingga berdampak negatif terhadap RLS (Efficient Journal, 2020).
  5. Rasio Guru-Murid (SD, SMP, SMA) Rasio guru-murid menunjukkan perbandingan jumlah guru terhadap jumlah murid di masing-masing jenjang pendidikan. Variabel ini diukur dalam jumlah murid per guru. Rasio yang tinggi (banyak murid per guru) dapat menurunkan kualitas pembelajaran dan berdampak negatif terhadap lama sekolah (Stochastic Frontier Analysis, 2013).
  6. Angka Partisipasi Murni (APM) SD/SMP/SMA/PT APM menunjukkan proporsi anak usia sekolah yang bersekolah pada jenjang yang sesuai dengan usianya. Variabel ini diukur dalam persentase (%). Tingginya APM menandakan semakin banyak anak yang menempuh pendidikan tepat waktu, yang secara tidak langsung meningkatkan rata-rata lama sekolah (BPS, 2024).

Tabel Daftar Variabel

Jenis Variabel Nama Variabel keterangan Satuan
Dependen Rata-rata Lama Sekolah (RLS) Jumlah tahun pendidikan yang ditempuh penduduk usia ≥15 tahun Tahun
Independen PAD Pendapatan Asli Daerah Miliar Rupiah
Independen DAU Pendidikan Dana alokasi untuk sektor pendidikan Miliar Rupiah
Independen PDRB Nilai output ekonomi daerah Miliar Rupiah
Independen Tingkat Kemiskinan Persentase penduduk miskin Persen (%)
Independen Rasio Guru-Murid SD/SMP/SMA Jumlah murid per guru Rasio
Independen APM SD/SMP/SMA/PT Proporsi anak usia sekolah yang bersekolah Persen (%)

3.4 Metode Analisis

Analisis dalam penelitian ini dilakukan melalui beberapa tahapan untuk mengidentifikasi, menguji, dan membandingkan model spasial yang paling sesuai dalam menjelaskan variasi Rata-rata Lama Sekolah (RLS) antarwilayah di Provinsi Jawa Barat. Tahapan metode analisis dijelaskan sebagai berikut:

1. Eksplorasi Data Spasial Tahap awal dilakukan eksplorasi data spasial untuk memahami distribusi geografis dan pola spasial dari variabel yang diteliti. Visualisasi dilakukan melalui peta tematik menggunakan data RLS dan variabel independen lainnya. Selain itu, dilakukan uji autokorelasi spasial global menggunakan Moran’s I untuk mengetahui apakah terdapat pola spasial yang signifikan pada variabel dependen.

2. Estimasi Model OLS Awal Sebelum melakukan estimasi model spasial, dilakukan regresi linier berganda (OLS) sebagai model dasar. Hasil residual dari model OLS kemudian diuji adanya autokorelasi spasial menggunakan Moran’s I pada residual, untuk memastikan apakah model OLS memenuhi asumsi independensi spasial. Jika terdapat autokorelasi spasial yang signifikan, maka model OLS dianggap tidak memadai.

3. Uji Lagrange Multiplier (LM) dan Robust LM Untuk menentukan bentuk ketergantungan spasial yang sesuai (apakah pada bentuk lag atau error), dilakukan uji Lagrange Multiplier (LM) serta uji Robust LM. Jika LM-Lag signifikan maka model dengan dependensi spasial pada variabel dependen (Spatial Lag Model) lebih sesuai. Jika LM-Error signifikan maka model dengan dependensi spasial pada error (Spatial Error Model) lebih sesuai. Jika keduanya signifikan, maka digunakan model lanjutan seperti SDM , SDEM, atau GNS untuk menangkap efek campuran.

4. Estimasi Model Spasial Lanjutan Berdasarkan hasil uji LM, dilakukan estimasi terhadap beberapa model regresi spasial lanjutan, yaitu: Spatial Durbin Model (SDM) Spatial Durbin Error Model (SDEM) Spatial Autocorrelation Model (SAC) Spatial Durbin Combined Model (SDCM) General Nesting Spatial (GNS) Pemilihan model ini didasarkan pada kompleksitas interaksi spasial yang mungkin terjadi baik pada variabel dependen maupun independen.

5.Perbandingan Kinerja Model Setelah semua model diestimasi, dilakukan evaluasi kinerja model menggunakan beberapa kriteria, yaitu Akaike Information Criterion (AIC), log-likelihood, Bayesian Information Criterion (BIC), serta signifikansi parameter. Model dengan nilai AIC terkecil dan log-likelihood terbesar dianggap memiliki performa terbaik.

6. Interpretasi Hasil Tahap akhir dilakukan interpretasi terhadap hasil estimasi model terbaik, terutama dalam menjelaskan efek langsung, efek tidak langsung (spillover), dan efek total dari variabel independen terhadap RLS. Interpretasi ini penting untuk memahami sejauh mana faktor-faktor sosial ekonomi dan pendidikan di suatu wilayah memengaruhi wilayah lainnya di Provinsi Jawa Barat.

3.5 Alur Penelitian

Penelitian ini dilaksanakan melalui beberapa tahapan analisis yang sistematis untuk memperoleh hasil yang komprehensif. Alur penelitian disusun agar setiap tahap saling berkaitan dan menghasilkan model spasial terbaik untuk menjelaskan variasi Rata-rata Lama Sekolah (RLS) di Provinsi Jawa Barat. Alur penelitian dituangkan kedalam diagram di bawah ini.

BAB 4 HASIL DAN PEMBAHASAN

4.1 Analisis Deskriptif dan Peta Tematik

Analisis deskriptif dilakukan untuk memberikan gambaran umum mengenai variasi spasial Rata-Rata Lama Sekolah (RLS) dan variabel-variabel ekonomi serta sosial yang menjadi faktor penentu di 27 kabupaten/kota di Provinsi Jawa Barat.

4.1.1 Peta Distribusi Rata-Rata Lama Sekolah

Peta tematik Rata-Rata Lama Sekolah (RLS) memvisualisasikan data spasial dari shapefile kabupaten/kota di Jawa Barat. Warna pada peta merepresentasikan perbedaan tingkat RLS di tiap wilayah. Semakin gelap warna yang ditampilkan, semakin tinggi nilai rata-rata lama sekolahnya.

library(spdep)
## Warning: package 'spdep' was built under R version 4.5.1
## Loading required package: spData
## Warning: package 'spData' was built under R version 4.5.1
## To access larger datasets in this package, install the spDataLarge
## package with: `install.packages('spDataLarge',
## repos='https://nowosad.github.io/drat/', type='source')`
## Loading required package: sf
## Warning: package 'sf' was built under R version 4.5.1
## Linking to GEOS 3.13.1, GDAL 3.11.0, PROJ 9.6.0; sf_use_s2() is TRUE
library(sp)
## Warning: package 'sp' was built under R version 4.5.1
library(sf)
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.5.1
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.5.1
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(openxlsx)
## Warning: package 'openxlsx' was built under R version 4.5.1
# -------------------------- MASUKKAN PLOT SPASIAL -----------------------------
Indo <- st_read("E:/SMT 5/Analisis Data Spasial/RBI_50K_2023_Jawa Barat.x26272/RBI_50K_2023_Jawa Barat.shp")
## Reading layer `RBI_50K_2023_Jawa Barat' from data source 
##   `E:\SMT 5\Analisis Data Spasial\RBI_50K_2023_Jawa Barat.x26272\RBI_50K_2023_Jawa Barat.shp' 
##   using driver `ESRI Shapefile'
## Simple feature collection with 27 features and 25 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 106.3703 ymin: -7.82099 xmax: 108.8468 ymax: -5.806538
## Geodetic CRS:  WGS 84
Indo$WADMKK
##  [1] "Bandung"          "Bandung Barat"    "Bekasi"           "Bogor"           
##  [5] "Ciamis"           "Cianjur"          "Cirebon"          "Garut"           
##  [9] "Indramayu"        "Karawang"         "Kota Bandung"     "Kota Banjar"     
## [13] "Kota Bekasi"      "Kota Bogor"       "Kota Cimahi"      "Kota Cirebon"    
## [17] "Kota Depok"       "Kota Sukabumi"    "Kota Tasikmalaya" "Kuningan"        
## [21] "Majalengka"       "Pangandaran"      "Purwakarta"       "Subang"          
## [25] "Sukabumi"         "Sumedang"         "Tasikmalaya"
ggplot(Indo) +
  geom_sf(fill = "lightblue", color = "black") +
  labs(title = "Peta Kabupaten/Kota di Provinsi Jawa Barat") +
  theme_minimal()

# ------------------------------- MASUKKAN DATA --------------------------------
data <- read.xlsx("E:/SMT 5/Analisis Data Spasial/Dashboard_Rata_rata_Lama_Sekolah/data/DATA SPASIAL.xlsx")
data$`Kabupaten/Kota`
##  [1] "Bogor"            "Sukabumi"         "Cianjur"          "Bandung"         
##  [5] "Garut"            "Tasikmalaya"      "Ciamis"           "Kuningan"        
##  [9] "Cirebon"          "Majalengka"       "Sumedang"         "Indramayu"       
## [13] "Subang"           "Purwakarta"       "Karawang"         "Bekasi"          
## [17] "Bandung Barat"    "Pangandaran"      "Kota Bogor"       "Kota Sukabumi"   
## [21] "Kota Bandung"     "Kota Cirebon"     "Kota Bekasi"      "Kota Depok"      
## [25] "Kota Cimahi"      "Kota Tasikmalaya" "Kota Banjar"
setdiff(data$`Kabupaten/Kota`, Indo$WADMKK)
## character(0)
# Merged data
jabar_merged <- Indo %>%
  left_join(data, by = c("WADMKK" = "Kabupaten/Kota"))

# --------------------------- BUAT PLOT SPASIAL --------------------------------
ggplot(jabar_merged) +
  geom_sf(aes(fill = `Rata.Rata.Lama.Sekolah`)) +
  scale_fill_viridis_c(option = "C") +
  labs(title = "Sebaran Rata-Rata Lama Sekolah di Jawa Barat", fill = "Rata-Rata Lama Sekolah (tahun)") +
  theme_minimal()

4.1.2 Peta Distribusi Variabel Ekonomi dan Sosial

Selain RLS, dibuat pula peta tematik untuk variabel ekonomi dan sosial, yaitu Pendapatan Asli Daerah (PAD), Dana Alokasi Umum (DAU) Pendidikan, Produk Domestik Regional Bruto (PDRB), Tingkat Kemiskinan, Rasio Guru–Murid (SD, SMP, SMA), serta Angka Partisipasi Murni (APM).

Peta-peta tersebut menunjukkan bahwa wilayah dengan PAD dan PDRB tinggi, seperti Kota Bandung, Kota Bekasi, dan Kabupaten Bogor, umumnya juga memiliki nilai RLS yang tinggi. Sebaliknya, wilayah dengan tingkat kemiskinan tinggi, seperti Kabupaten Garut dan Kabupaten Cianjur, cenderung memiliki RLS lebih rendah. Pola ini memperkuat indikasi adanya keterkaitan spasial antara kondisi ekonomi dan capaian pendidikan.

# ============================================================
# PETA SEBARAN SETIAP VARIABEL X
# ============================================================

library(spdep)
library(ggplot2)
library(dplyr)

# Daftar variabel X
x_vars <- c(
  "PAD", "DAU.Pendidikan", "PDRB", "Tingkat.Kemiskinan",
  "Rasio.Guru.dan.Murid.SD", "Rasio.Guru.dan.Murid.SMP",
  "Rasio.Guru.dan.Murid.SMA", "APM.SD", "APM.SMP", "APM.SMA", "APM.PT"
)

# Loop untuk semua variabel
for (v in x_vars) {
  cat("\n=====================================\n")
  cat("🔹 Variabel:", v, "\n")
  cat("=====================================\n")
  
  
  # -------------------- Plot Sebaran --------------------
  print(
    ggplot(jabar_merged) +
      geom_sf(aes(fill = .data[[v]]), color = "white", size = 0.2) +
      scale_fill_viridis_c(option = "C", direction = -1) +
      labs(
        title = paste("Sebaran", v, "di Jawa Barat"),
        fill = v
      ) +
      theme_minimal() +
      theme(
        plot.title = element_text(face = "bold", size = 14),
        legend.position = "bottom"
      )
  )
}
## 
## =====================================
## 🔹 Variabel: PAD 
## =====================================

## 
## =====================================
## 🔹 Variabel: DAU.Pendidikan 
## =====================================

## 
## =====================================
## 🔹 Variabel: PDRB 
## =====================================

## 
## =====================================
## 🔹 Variabel: Tingkat.Kemiskinan 
## =====================================

## 
## =====================================
## 🔹 Variabel: Rasio.Guru.dan.Murid.SD 
## =====================================

## 
## =====================================
## 🔹 Variabel: Rasio.Guru.dan.Murid.SMP 
## =====================================

## 
## =====================================
## 🔹 Variabel: Rasio.Guru.dan.Murid.SMA 
## =====================================

## 
## =====================================
## 🔹 Variabel: APM.SD 
## =====================================

## 
## =====================================
## 🔹 Variabel: APM.SMP 
## =====================================

## 
## =====================================
## 🔹 Variabel: APM.SMA 
## =====================================

## 
## =====================================
## 🔹 Variabel: APM.PT 
## =====================================

4.1.3 Statistik Deskriptif Variabel Penelitian

Tabel berikut menampilkan ringkasan statistik deskriptif untuk setiap variabel penelitian.

No Variabel Min 1st Qu. Median Mean 3rd Qu. Max
1 Rata-Rata Lama Sekolah 6.95 7.875 8.240 8.915 10.070 11.790
2 Pendapatan Asli Daerah 156.6 427.9 649.4 1135.6 1423.1 3860.4
3 Dana Alokasi Umum Pendidikan 14.23 42.09 88.15 210.76 220.17 2454.62
4 PDRB 24914 31834 39699 53108 55891 147081
5 Tingkat Kemiskinan 2.34 6.36 8.41 8.014 10.185 11.93
6 Rasio Guru dan Murid SD 12.44 16.76 20.37 19.80 22.96 26.86
7 Rasio Guru dan Murid SMP 14.11 16.73 18.69 18.38 19.59 24.11
8 Rasio Guru dan Murid SMA 15.81 17.70 18.36 18.65 19.79 22.70
9 APM SD 97.22 97.75 98.48 98.53 99.50 99.99
10 APM SMP 75.95 81.24 85.38 84.74 87.83 91.39
11 APM SMA 50.85 59.45 62.27 62.64 65.39 72.74
12 APM PT 7.75 11.76 14.79 17.64 20.62 40.06

Dari tabel di atas, terlihat bahwa variabel Rata-Rata Lama Sekolah (RLS) memiliki nilai rata-rata sebesar 8,915 tahun, dengan variasi yang cukup lebar antara wilayah berpendidikan rendah (6,95 tahun) hingga tinggi (11,79 tahun). Nilai PDRB dan PAD menunjukkan perbedaan yang signifikan antarwilayah, menandakan ketimpangan ekonomi regional yang tinggi. Sementara itu, Angka Partisipasi Murni (APM) menunjukkan tren menurun seiring meningkatnya jenjang pendidikan, yang mengindikasikan semakin besar proporsi anak yang tidak melanjutkan ke tingkat pendidikan yang lebih tinggi.

4.2 Hasil Uji Autokorelasi Spasial

4.2.1 Pola Keterkaitan Spasial Antarwilayah

Sebelum melakukan uji autokorelasi spasial, terlebih dahulu divisualisasikan jaringan ketetanggaan (spatial neighborhood) antar 27 kabupaten/kota di Provinsi Jawa Barat. Plot jaringan ketetanggaan ini dibuat menggunakan queen contiguity, di mana dua wilayah dianggap bertetangga jika berbagi sisi atau titik sudut (corner adjacency).

# ------------------------- PLOT JARINGAN TETANGGA -----------------------------
# Ubah ke format Spatial untuk fungsi spdep
jabar_sp <- as_Spatial(jabar_merged)
row.names(jabar_sp) <- jabar_sp$WADMKK
# Buat daftar ketetanggaan (queen contiguity)
W <- poly2nb(jabar_sp, row.names = row.names(jabar_sp), queen = TRUE)
WL <- nb2listw(W, style = "W", zero.policy = TRUE)
summary(W)
## Neighbour list object:
## Number of regions: 27 
## Number of nonzero links: 106 
## Percentage nonzero weights: 14.54047 
## Average number of links: 3.925926 
## Link number distribution:
## 
## 1 2 3 4 5 6 7 8 
## 4 3 6 4 1 7 1 1 
## 4 least connected regions:
## Kota Banjar Kota Bogor Kota Cirebon Kota Sukabumi with 1 link
## 1 most connected region:
## Bogor with 8 links
# Buat Plot
CoordJ <- coordinates(jabar_sp)
plot(jabar_sp, axes = TRUE, col = "gray90",
     main = "Jaringan Ketetanggaan Kabupaten/Kota di Jawa Barat")
text(CoordJ[,1], CoordJ[,2], labels = row.names(jabar_sp),
     col = "black", cex = 0.6, pos = 1.5)
points(CoordJ[,1], CoordJ[,2], pch = 19, cex = 0.7, col = "blue")
plot.nb(W, CoordJ, add = TRUE, col = "red", lwd = 1.5)

Secara teknis, plot ini menggambarkan struktur hubungan spasial antarwilayah, di mana garis merah menunjukkan konektivitas antar kabupaten/kota yang saling berbatasan berdasarkan kriteria queen contiguity. Hasilnya menunjukkan bahwa sebagian besar wilayah di Jawa Barat memiliki keterkaitan spasial yang cukup padat, terutama di wilayah utara dan tengah, sedangkan bagian selatan relatif lebih jarang memiliki tetangga langsung akibat kondisi geografis yang bergunung dan jarak antarwilayah yang lebih besar.

4.2.2 Uji Autokorelasi Spasial pada Variabel Rata-Rata Lama Sekolah

Hasil uji autokorelasi spasial untuk variabel Rata-Rata Lama Sekolah (RLS) menunjukkan nilai Moran’s I sebesar 0.265 (p-value = 0.0159) dan Geary’s C sebesar 0.611 (p-value = 0.0062).

# -----------Morans'I-----------
Global_Moran <- moran.test(
  jabar_merged$`Rata.Rata.Lama.Sekolah`,
  WL,
  zero.policy = TRUE
)
Global_Moran
## 
##  Moran I test under randomisation
## 
## data:  jabar_merged$Rata.Rata.Lama.Sekolah  
## weights: WL    
## 
## Moran I statistic standard deviate = 2.1476, p-value = 0.01587
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##        0.26545136       -0.03846154        0.02002679
# -----------Geary's C-----------
Global_Geary <- geary.test(
  jabar_merged$`Rata.Rata.Lama.Sekolah`,
  WL,
  zero.policy = TRUE
)
Global_Geary
## 
##  Geary C test under randomisation
## 
## data:  jabar_merged$Rata.Rata.Lama.Sekolah 
## weights: WL   
## 
## Geary C statistic standard deviate = 2.5008, p-value = 0.006195
## alternative hypothesis: Expectation greater than statistic
## sample estimates:
## Geary C statistic       Expectation          Variance 
##        0.61054249        1.00000000        0.02425242

Nilai Moran’s I positif dan signifikan (p < 0.05) mengindikasikan adanya autokorelasi spasial positif, yang berarti wilayah dengan RLS tinggi cenderung berdekatan dengan wilayah lain yang juga memiliki RLS tinggi, dan begitu pula sebaliknya. Sementara itu, nilai Geary’s C < 1 juga memperkuat indikasi adanya spatial clustering (pola pengelompokan spasial).

# -----------Getis-Ord General G-----------
row.names(jabar_sp) <- jabar_sp$WADMKK
jabar_merged <- jabar_merged[match(row.names(jabar_sp), jabar_merged$WADMKK), ]
lwB <- nb2listw(W, style = "B", zero.policy = TRUE)  # biner (0/1)
lwW <- nb2listw(W, style = "W", zero.policy = TRUE)  # row-standardized (weight row sum = 1)
Wb_mat <- listw2mat(lwB)   # matriks bobot biner

x_raw <- jabar_merged$`Rata.Rata.Lama.Sekolah`
na_idx <- is.na(x_raw)
if(any(na_idx)) {
  message(sum(na_idx), " observasi memiliki NA pada variabel; NA akan diperlakukan sebagai 0 untuk perhitungan G raw.")
}
x_for_calc <- x_raw
x_for_calc[is.na(x_for_calc)] <- 0
sum_x <- sum(x_for_calc)
num_G <- as.numeric(Wb_mat %*% x_for_calc)
den_G <- (sum_x - x_for_calc)
G_raw <- num_G / den_G
Wb_star <- Wb_mat
diag(Wb_star) <- 1
num_Gs <- as.numeric(Wb_star %*% x_for_calc)
den_Gs <- sum_x
G_star_raw <- num_Gs / den_Gs

Gz <- as.numeric(spdep::localG(x_for_calc, listw = lwW, zero.policy = TRUE))
jabar_G <- dplyr::mutate(
  jabar_merged,
  G_raw = G_raw,
  G_star_raw = G_star_raw,
  z_Gistar = Gz,
  hotcold = dplyr::case_when(
    z_Gistar >=  1.96 ~ "Hot spot (p<=0.05)",
    z_Gistar <= -1.96 ~ "Cold spot (p<=0.05)",
    TRUE              ~ "Not significant"
  )
)

# Cek ringkasan
summary(dplyr::select(jabar_G, G_raw, G_star_raw, z_Gistar))
##      G_raw           G_star_raw         z_Gistar                geometry 
##  Min.   :0.03187   Min.   :0.07034   Min.   :-2.0392   MULTIPOLYGON :27  
##  1st Qu.:0.09404   1st Qu.:0.13076   1st Qu.:-1.2986   epsg:4326    : 0  
##  Median :0.13425   Median :0.16851   Median :-0.8340   +proj=long...: 0  
##  Mean   :0.14414   Mean   :0.17603   Mean   :-0.5662                     
##  3rd Qu.:0.20667   3rd Qu.:0.23284   3rd Qu.: 0.1395                     
##  Max.   :0.32160   Max.   :0.34524   Max.   : 1.4661
table(jabar_G$hotcold, useNA = "ifany")
## 
## Cold spot (p<=0.05)     Not significant 
##                   2                  25
# ----Peta: G* raw (proporsi) dan peta hot/cold (z-score)-----
library(ggplot2)
library(viridis)
## Warning: package 'viridis' was built under R version 4.5.1
## Loading required package: viridisLite
# peta G*_raw (kontinu)
p1 <- ggplot(jabar_G) +
  geom_sf(aes(fill = G_star_raw), color = "white", size = 0.2) +
  scale_fill_viridis_c(option = "C", na.value = "grey90") +
  labs(title = "Raw Getis–Ord G* (proporsi massa tetangga)",
       subtitle = "Variabel: Rata-Rata Lama Sekolah",
       fill = "G*_raw") +
  theme_minimal()

# peta hot/cold (kategori)
# atur urutan factor agar legend rapi
jabar_G$hotcold <- factor(jabar_G$hotcold,
                          levels = c("Hot spot (p<=0.05)", "Cold spot (p<=0.05)", "Not significant"))

p2 <- ggplot(jabar_G) +
  geom_sf(aes(fill = hotcold), color = "white", size = 0.2) +
  scale_fill_manual(values = c("Hot spot (p<=0.05)" = "#b2182b",
                               "Cold spot (p<=0.05)" = "#2166ac",
                               "Not significant" = "grey85"),
                    na.value = "grey90") +
  labs(title = "Getis–Ord Gi* — Hot/Cold Spots (z-score)",
       subtitle = "z(G*_i) berdasarkan localG (alpha = 0.05)",
       fill = NULL) +
  theme_minimal()

# Tampilkan peta
print(p1)

print(p2)

# -----------LISA---------------
# Local Moran’s I
Local_Moran <- localmoran(jabar_merged$`Rata.Rata.Lama.Sekolah`, WL, zero.policy = TRUE)

# Tambahkan hasil LISA ke data spasial
colnames(Local_Moran) <- c("Ii", "E.Ii", "Var.Ii", "Z.Ii", "P.value")
jabar_merged$Ii <- Local_Moran[, "Ii"]
jabar_merged$Z.Ii <- Local_Moran[, "Z.Ii"]
jabar_merged$P.value <- Local_Moran[, "P.value"]

# Klasifikasi Klaster LISA
mean_var <- mean(jabar_merged$`Rata.Rata.Lama.Sekolah`, na.rm = TRUE)
mean_lag <- lag.listw(WL, jabar_merged$`Rata.Rata.Lama.Sekolah`)

jabar_merged$cluster <- NA
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` >= mean_var & mean_lag >= mean(mean_lag)] <- "High-High"
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` <= mean_var & mean_lag <= mean(mean_lag)] <- "Low-Low"
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` >= mean_var & mean_lag <= mean(mean_lag)] <- "High-Low"
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` <= mean_var & mean_lag >= mean(mean_lag)] <- "Low-High"
jabar_merged$cluster[jabar_merged$P.value > 0.05] <- "Non-signifikan"

# Visualisasi LISA
ggplot(jabar_merged) +
  geom_sf(aes(fill = cluster)) +
  scale_fill_manual(values = c(
    "High-High" = "red",
    "Low-Low" = "blue",
    "High-Low" = "orange",
    "Low-High" = "green",
    "Non-signifikan" = "grey80"
  )) +
  labs(
    title = "Peta Klaster Autokorelasi Lokal (LISA)",
    subtitle = "Variabel: Rata-rata Lama Sekolah di Jawa Barat",
    fill = "Tipe Klaster"
  ) +
  theme_minimal()

Analisis lanjutan menggunakan Local Indicators of Spatial Association (LISA) dan Getis-Ord Gi* memperlihatkan bahwa terdapat kluster signifikan bertipe Low-Low (cold spot) di wilayah Kabupaten Sumedang dan Kabupaten Majalengka, yang berarti kedua wilayah tersebut memiliki nilai RLS rendah dan dikelilingi oleh wilayah dengan RLS rendah pula. Sementara itu, kluster High-High (hot spot) muncul di wilayah perkotaan seperti Kota Bandung dan Kota Depok, yang menandakan konsentrasi wilayah dengan RLS tinggi.

4.2.3 Uji Autokorelasi Spasial pada Variabel Independen

Hasil uji Moran’s I dan Geary’s C untuk variabel-variabel independen disajikan pada tabel berikut:

Variabel Moran’s I p-value (I) Geary’s C p-value (C)
PAD 0.5274 1.64e-05 0.6356 2.07e-02
DAU.Pendidikan -0.1334 0.9699 20.165 0.9986
PDRB 0.2110 0.0314 0.6599 0.0344
Tingkat.Kemiskinan 0.4776 1.29e-04 0.4102 8.65e-05
Rasio.Guru.dan.Murid.SD 0.4503 2.66e-04 0.6854 2.31e-02
Rasio.Guru.dan.Murid.SMP 0.6076 1.38e-06 0.4387 5.61e-04
Rasio.Guru.dan.Murid.SMA 0.0642 0.2316 0.8453 0.1715
APM.SD -0.0458 0.5206 0.9954 0.4878
APM.SMP 0.2404 0.0238 0.7428 0.0529
APM.SMA 0.0449 0.2752 0.9892 0.4739
APM.PT 0.1261 0.1137 0.7718 0.1002

Hasil tersebut menunjukkan bahwa variabel-variabel ekonomi dan sosial seperti PAD, PDRB, dan Tingkat Kemiskinan memiliki autokorelasi spasial positif signifikan, yang menandakan adanya pengelompokan spasial berdasarkan kondisi ekonomi antarwilayah. Sementara itu, variabel-variabel pendidikan seperti Rasio Guru–Murid SMP juga menunjukkan pola spasial kuat (Moran’s I = 0.6076; p < 0.001), yang berarti distribusi tenaga pendidik antarwilayah tidak merata secara spasial. Secara umum, hasil ini menunjukkan bahwa baik variabel dependen maupun beberapa variabel independen memiliki ketergantungan spasial. Dengan demikian, model OLS biasa tidak lagi memadai karena asumsi independensi antar observasi spasial dilanggar. Oleh sebab itu, diperlukan pendekatan model regresi spasial lanjutan untuk menangkap efek spasial baik pada variabel dependen (lag) maupun residual (error).

4.3 Hasil Estimasi OLS

Tahap awal analisis dilakukan dengan mengestimasi model regresi linier berganda menggunakan metode Ordinary Least Squares (OLS). Model ini bertujuan untuk mengetahui pengaruh variabel independen, yaitu PAD, DAU Pendidikan, PDRB, Tingkat Kemiskinan, Rasio Guru-Murid SD/SMP/SMA, serta APM SD/SMP/SMA/PT terhadap variabel dependen Rata-Rata Lama Sekolah (RLS) di 27 kabupaten/kota di Provinsi Jawa Barat. Persamaan regresi yang diperoleh adalah sebagai berikut: \[ \hat{y} = 27.1 + 7.86 \times 10^{-5} PAD - 5.9 \times 10^{-5} DAU_{Pendidikan} + 6.66 \times 10^{-7} PDRB - 2.46 \times 10^{-1} TK \] \[ + 6.58 \times 10^{-2} Rasio_{SD} - 6.59 \times 10^{-2} Rasio_{SMP} - 2.856 \times 10^{-1} Rasio_{SMA} - 1.89 \times 10^{-1} APM_{SD} \] \[ + 1.89 \times 10^{-1} APM_{SD} + 1.61 \times 10^{-2} APM_{SMP} + 4.77 \times 10^{-2} APM_{SMA} + 5.07 \times 10^{-2} APM_{PT} \] Uji Asumsi

# ---------------------------------- MODEL OLS ---------------------------------
ols_model <- lm(`Rata.Rata.Lama.Sekolah` ~ 
                  PAD +
                  DAU.Pendidikan +
                  PDRB +
                  Tingkat.Kemiskinan +
                  Rasio.Guru.dan.Murid.SD +
                  Rasio.Guru.dan.Murid.SMP +
                  Rasio.Guru.dan.Murid.SMA +
                  APM.SD +
                  APM.SMP +
                  APM.SMA +
                  APM.PT,
                data = data
)
summary(ols_model)
## 
## Call:
## lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.20316 -0.37712 -0.00192  0.28643  1.37944 
## 
## Coefficients:
##                            Estimate Std. Error t value Pr(>|t|)  
## (Intercept)               2.710e+01  2.493e+01   1.087   0.2943  
## PAD                       7.856e-05  2.572e-04   0.305   0.7643  
## DAU.Pendidikan           -5.904e-04  5.621e-04  -1.050   0.3102  
## PDRB                      6.659e-07  7.917e-06   0.084   0.9341  
## Tingkat.Kemiskinan       -2.458e-01  1.307e-01  -1.882   0.0794 .
## Rasio.Guru.dan.Murid.SD   6.579e-02  7.169e-02   0.918   0.3733  
## Rasio.Guru.dan.Murid.SMP  6.594e-02  1.579e-01   0.418   0.6822  
## Rasio.Guru.dan.Murid.SMA -2.853e-01  1.426e-01  -2.001   0.0638 .
## APM.SD                   -1.893e-01  2.307e-01  -0.821   0.4248  
## APM.SMP                   1.608e-02  4.604e-02   0.349   0.7318  
## APM.SMA                   4.768e-02  4.407e-02   1.082   0.2964  
## APM.PT                    5.068e-02  3.644e-02   1.391   0.1846  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.7458 on 15 degrees of freedom
## Multiple R-squared:  0.8539, Adjusted R-squared:  0.7467 
## F-statistic: 7.969 on 11 and 15 DF,  p-value: 0.0001909
# Uji Multikolinearitas
library(car)
## Warning: package 'car' was built under R version 4.5.1
## Loading required package: carData
## Warning: package 'carData' was built under R version 4.5.1
## 
## Attaching package: 'car'
## The following object is masked from 'package:dplyr':
## 
##     recode
vif(ols_model)
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# Uji Normalitas Residual
shapiro.test(residuals(ols_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(ols_model)
## W = 0.98858, p-value = 0.9875
# Uji Homoskedastisitas
library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
bptest(ols_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  ols_model
## BP = 13.367, df = 11, p-value = 0.27
# Uji Linearitas
library(lmtest)
resettest(ols_model)
## 
##  RESET test
## 
## data:  ols_model
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743

Dari hasil uji di atas didapatkan kesimpulan berikut.

  1. Uji Multikolinearitas Berdasarkan hasil Variance Inflation Factor (VIF), seluruh variabel memiliki nilai di bawah 10 (berkisar antara 1,69 hingga 6,16), sehingga dapat disimpulkan bahwa tidak terjadi multikolinearitas serius antarvariabel independen.

  2. Uji Normalitas Residual Hasil uji Shapiro–Wilk menunjukkan nilai p = 0.9875 > 0.05, sehingga residual berdistribusi normal.

  3. Uji Homoskedastisitas Berdasarkan Breusch–Pagan Test, diperoleh p-value = 0.27 > 0.05, yang berarti tidak terdapat heteroskedastisitas dalam model.

  4. Uji Linearitas Uji RESET menghasilkan p-value = 0.3743 > 0.05, menunjukkan bahwa model bersifat linear dan telah teridentifikasi dengan benar. Dengan demikian, seluruh asumsi klasik terpenuhi, sehingga model OLS layak digunakan untuk analisis lanjutan.

# Uji Autokorelasi Spasial Residual
jabar_merged$residual_ols <- residuals(ols_model)
moran_res <- moran.test(
  jabar_merged$residual_ols,
  WL,
  zero.policy = TRUE
)
moran_res
## 
##  Moran I test under randomisation
## 
## data:  jabar_merged$residual_ols  
## weights: WL    
## 
## Moran I statistic standard deviate = 1.9156, p-value = 0.02771
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##        0.22699884       -0.03846154        0.01920382

Selanjutnya dilakukan uji Moran’s I terhadap residual untuk mendeteksi adanya autokorelasi spasial. Hasil uji menunjukkan nilai Moran’s I sebesar 0.227 dengan p-value 0.0277, yang berarti terdapat autokorelasi spasial positif yang signifikan pada residual model OLS. Hal ini mengindikasikan bahwa nilai residual pada suatu wilayah berkaitan dengan residual wilayah di sekitarnya, sehingga model OLS belum sepenuhnya menangkap dependensi spasial antarwilayah. Oleh karena itu, diperlukan estimasi model spasial lanjutan seperti Spatial Lag Model (SLM) atau Spatial Error Model (SEM) untuk memperbaiki pengaruh spasial yang terabaikan.

4.4 Hasil Uji LM dan Pemilihan Model

# ==================  MODEL DIAGNOSTIC  =======================
lm.RStests(ols_model, listw = WL, zero.policy = TRUE, test = "all")
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## RSerr = 2.2446, df = 1, p-value = 0.1341
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## RSlag = 0.8677, df = 1, p-value = 0.3516
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## adjRSerr = 6.0142, df = 1, p-value = 0.01419
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## adjRSlag = 4.6374, df = 1, p-value = 0.03128
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## SARMA = 6.8819, df = 2, p-value = 0.03203

Setelah diketahui bahwa terdapat autokorelasi spasial positif pada residual model OLS, dilakukan pengujian Lagrange Multiplier (LM) untuk menentukan bentuk dependensi spasial yang paling sesuai, apakah dalam bentuk Spatial Lag Model (SLM) atau Spatial Error Model (SEM). Berdasarkan hasil uji LM, diperoleh nilai sebagai berikut:

Jenis Uji Statistik p-value Keterangan
LM Error (RSerr) 2.2446 0.1341 Tidak Signifikan
LM Lag (RSlag) 0.8677 0.3516 Tidak Signifikan
Robust LM Error (adjRSerr) 6.0142 0.01419 Signifikan
Robust LM Lag (adjRSlag) 4.6374 0.03128 Signifikan
LM SARMA 6.8819 0.03203 Signifikan

Hasil di atas menunjukkan bahwa uji Robust LM Error dan Robust LM Lag keduanya signifikan pada tingkat signifikansi 5%, sedangkan uji LM murninya (tanpa robust) tidak signifikan. Selain itu, uji SARMA juga signifikan, yang mengindikasikan bahwa terdapat pengaruh spasial baik dalam bentuk lag dependen maupun error secara bersamaan.

Temuan ini menunjukkan bahwa model OLS belum mampu menangkap sepenuhnya struktur spasial dalam data, sehingga diperlukan estimasi model spasial lanjutan. Karena uji Robust LM Error memiliki nilai statistik yang sedikit lebih tinggi dibandingkan Robust LM Lag, maka arah awal pemilihan cenderung menuju model Spatial Error (SEM).

Namun, mengingat kedua uji robust signifikan dan hasil SARMA juga signifikan, maka pendekatan yang lebih komprehensif perlu dilakukan dengan mengestimasi beberapa model spasial sekaligus, yaitu Spatial Autoregressive (SAR), Spatial Lag Model (SLM), Spatial Error Model (SEM), Spatial Durbin Model (SDM), Spatial Durbin Error Model (SDEM), dan General Nesting Spatial (GNS) untuk kemudian dibandingkan melalui nilai AIC, BIC, log-likelihood, serta signifikansi parameter.

Dengan demikian, hasil uji LM dan Robust LM mengonfirmasi adanya dependensi spasial yang signifikan pada data Rata-Rata Lama Sekolah antar kabupaten/kota di Jawa Barat, dan menjadi dasar untuk melanjutkan ke tahap estimasi model spasial lanjutan yang menangkap efek spasial pada variabel dependen, variabel independen, serta error sekaligus. Model-model tersebut yakni meliputi Spatial Durbin Model (SDM), Spatial Durbin Error Model (SDEM), SAC, dan General Nesting Spatial (GNS).

4.5 Estimasi dan Perbandingan Model Spasial Lanjutan

Berdasarkan hasil uji LM dan Robust LM pada subbab sebelumnya, dipilih beberapa model spasial lanjutan untuk menangkap dependensi spasial dalam data Rata-Rata Lama Sekolah (RLS) antar kabupaten/kota di Jawa Barat. Model yang dieksplorasi meliputi Spatial Durbin Model (SDM), Spatial Durbin Error Model (SDEM), SAC, dan General Nesting Spatial (GNS).

# =============================================================
# ========  MODEL SPASIAL EKONOMETRIK LANJUTAN  ===============
# =============================================================
library(TH.data)
## Warning: package 'TH.data' was built under R version 4.5.1
## Loading required package: survival
## Loading required package: MASS
## 
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
## 
##     select
## 
## Attaching package: 'TH.data'
## The following object is masked from 'package:MASS':
## 
##     geyser
library(spdep)
library(spatialreg)
## Warning: package 'spatialreg' was built under R version 4.5.1
## Loading required package: Matrix
## 
## Attaching package: 'spatialreg'
## The following objects are masked from 'package:spdep':
## 
##     get.ClusterOption, get.coresOption, get.mcOption,
##     get.VerboseOption, get.ZeroPolicyOption, set.ClusterOption,
##     set.coresOption, set.mcOption, set.VerboseOption,
##     set.ZeroPolicyOption
library(lmtest)
library(car)
# =============================================================
# 1. SPATIAL DURBIN MODEL (SDM)
# =============================================================
sdm_model <- lagsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  Durbin = TRUE,
  method = "eigen"
)
## Warning in lagsarlm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + : inversion of asymptotic covariance matrix failed for tol.solve = 2.22044604925031e-16 
##   reciprocal condition number = 1.59551e-16 - using numerical Hessian.
summary(sdm_model)
## 
## Call:lagsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.4011178 -0.1511316 -0.0026241  0.0792597  0.7131894 
## 
## Type: mixed 
## Coefficients: (numerical Hessian approximate standard errors) 
##                                 Estimate  Std. Error z value  Pr(>|z|)
## (Intercept)                  -5.0623e+01  1.6621e+01 -3.0458  0.002320
## PAD                           1.3645e-04  1.5215e-04  0.8968  0.369824
## DAU.Pendidikan               -8.5671e-05  2.0903e-04 -0.4098  0.681923
## PDRB                          8.1394e-06  4.1145e-06  1.9782  0.047905
## Tingkat.Kemiskinan           -3.0738e-01  9.5765e-02 -3.2097  0.001329
## Rasio.Guru.dan.Murid.SD       1.2140e-01  3.1069e-02  3.9075 9.326e-05
## Rasio.Guru.dan.Murid.SMP     -1.1745e-01  6.1966e-02 -1.8955  0.058030
## Rasio.Guru.dan.Murid.SMA     -2.6239e-01  1.3255e-01 -1.9796  0.047749
## APM.SD                       -1.9172e-01  1.0007e-01 -1.9159  0.055378
## APM.SMP                      -5.5908e-02  3.1207e-02 -1.7915  0.073213
## APM.SMA                       9.3052e-02  2.8799e-02  3.2311  0.001233
## APM.PT                        2.1652e-02  2.4999e-02  0.8661  0.386437
## lag.PAD                      -9.2271e-05  3.1370e-04 -0.2941  0.768654
## lag.DAU.Pendidikan            2.8324e-04  5.7333e-04  0.4940  0.621292
## lag.PDRB                      4.9924e-05  1.1749e-05  4.2493 2.145e-05
## lag.Tingkat.Kemiskinan        1.1490e-01  1.6950e-01  0.6779  0.497852
## lag.Rasio.Guru.dan.Murid.SD   3.3055e-01  1.1748e-01  2.8137  0.004898
## lag.Rasio.Guru.dan.Murid.SMP -1.1126e+00  1.9529e-01 -5.6972 1.218e-08
## lag.Rasio.Guru.dan.Murid.SMA  1.1095e+00  2.0106e-01  5.5180 3.428e-08
## lag.APM.SD                    4.7641e-01  1.7402e-01  2.7376  0.006189
## lag.APM.SMP                   2.5514e-01  1.0510e-01  2.4276  0.015198
## lag.APM.SMA                   1.1211e-01  5.4907e-02  2.0418  0.041173
## lag.APM.PT                   -5.5763e-03  4.9677e-02 -0.1123  0.910625
## 
## Rho: -0.26404, LR test value: 0.62355, p-value: 0.42973
## Approximate (numerical Hessian) standard error: 0.28486
##     z-value: -0.92689, p-value: 0.35398
## Wald statistic: 0.85913, p-value: 0.35398
## 
## Log likelihood: -0.5617963 for mixed model
## ML residual variance (sigma squared): 0.06003, (sigma: 0.24501)
## Number of observations: 27 
## Number of parameters estimated: 25 
## AIC: 51.124, (AIC for lm: 49.747)
# =============================================================
# 2. SPATIAL DURBIN ERROR MODEL (SDEM)
# =============================================================
sdem_model <- errorsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  Durbin = TRUE,
  method = "eigen"
)
## Warning in errorsarlm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + : inversion of asymptotic covariance matrix failed for tol.solve = 2.22044604925031e-16 
##   reciprocal condition number = 2.51961e-18 - using numerical Hessian.
summary(sdem_model)
## 
## Call:errorsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.16825813 -0.04242035 -0.00060182  0.04974527  0.15696417 
## 
## Type: error 
## Coefficients: (asymptotic standard errors) 
##                                 Estimate  Std. Error  z value  Pr(>|z|)
## (Intercept)                  -2.6839e+02  4.9746e+01  -5.3951 6.847e-08
## PAD                           2.7748e-05  9.7009e-05   0.2860 0.7748483
## DAU.Pendidikan               -7.9049e-04  1.9440e-04  -4.0664 4.775e-05
## PDRB                          1.7335e-05  1.8281e-06   9.4823 < 2.2e-16
## Tingkat.Kemiskinan           -2.7951e-02  5.0168e-02  -0.5572 0.5774218
## Rasio.Guru.dan.Murid.SD       7.5629e-02  2.0929e-02   3.6137 0.0003019
## Rasio.Guru.dan.Murid.SMP      6.0750e-02  4.3325e-02   1.4022 0.1608565
## Rasio.Guru.dan.Murid.SMA      2.0100e-01  7.8406e-02   2.5636 0.0103604
## APM.SD                       -4.2374e-01  7.4106e-02  -5.7181 1.077e-08
## APM.SMP                       3.9796e-02  1.8588e-02   2.1409 0.0322816
## APM.SMA                       1.8017e-01  2.2052e-02   8.1701 2.220e-16
## APM.PT                        5.8663e-02  1.4297e-02   4.1031 4.076e-05
## lag.PAD                       1.8569e-04  1.4902e-04   1.2461 0.2127439
## lag.DAU.Pendidikan            1.8795e-03  3.5650e-04   5.2720 1.350e-07
## lag.PDRB                      1.6472e-04  1.8195e-05   9.0532 < 2.2e-16
## lag.Tingkat.Kemiskinan        1.4713e+00  3.1569e-01   4.6606 3.154e-06
## lag.Rasio.Guru.dan.Murid.SD   4.5366e-01  5.8957e-02   7.6947 1.421e-14
## lag.Rasio.Guru.dan.Murid.SMP -2.6016e+00  2.3129e-01 -11.2483 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SMA  2.2328e+00  1.7796e-01  12.5466 < 2.2e-16
## lag.APM.SD                    2.4913e+00  5.0539e-01   4.9296 8.241e-07
## lag.APM.SMP                   5.2100e-02  6.7999e-02   0.7662 0.4435678
## lag.APM.SMA                   3.3836e-01  6.4771e-02   5.2240 1.751e-07
## lag.APM.PT                    1.1363e-01  5.8096e-02   1.9559 0.0504736
## 
## Lambda: -1.4052, LR test value: 43.389, p-value: 4.4866e-11
## Approximate (numerical Hessian) standard error: 0.018085
##     z-value: -77.701, p-value: < 2.22e-16
## Wald statistic: 6037.4, p-value: < 2.22e-16
## 
## Log likelihood: 20.82102 for error model
## ML residual variance (sigma squared): 0.0053965, (sigma: 0.073461)
## Number of observations: 27 
## Number of parameters estimated: 25 
## AIC: 8.358, (AIC for lm: 49.747)
# =============================================================
# 3. SPATIAL AUTOREGRESSIVE COMBINED (SAC)
# =============================================================
sac_model <- sacsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  method = "eigen"
)
summary(sac_model)
## 
## Call:sacsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, method = "eigen")
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.8938399 -0.3285814 -0.0095635  0.2515072  0.9919206 
## 
## Type: sac 
## Coefficients: (asymptotic standard errors) 
##                             Estimate  Std. Error z value  Pr(>|z|)
## (Intercept)               4.1564e+01  1.6708e+01  2.4876  0.012860
## PAD                       1.1423e-04  1.6438e-04  0.6949  0.487115
## DAU.Pendidikan           -5.4504e-04  3.1979e-04 -1.7044  0.088312
## PDRB                     -3.7658e-07  4.9163e-06 -0.0766  0.938944
## Tingkat.Kemiskinan       -2.6798e-01  9.4870e-02 -2.8247  0.004732
## Rasio.Guru.dan.Murid.SD   6.2205e-02  4.2011e-02  1.4807  0.138692
## Rasio.Guru.dan.Murid.SMP  1.0608e-01  9.2260e-02  1.1498  0.250213
## Rasio.Guru.dan.Murid.SMA -4.2389e-01  1.0425e-01 -4.0662 4.778e-05
## APM.SD                   -2.7545e-01  1.3715e-01 -2.0083  0.044609
## APM.SMP                  -8.1964e-03  3.0575e-02 -0.2681  0.788641
## APM.SMA                   4.2308e-02  2.4101e-02  1.7555  0.079178
## APM.PT                    4.8717e-02  2.5294e-02  1.9260  0.054101
## 
## Rho: -0.16136
## Asymptotic standard error: 0.14919
##     z-value: -1.0816, p-value: 0.27945
## Lambda: 0.64697
## Asymptotic standard error: 0.16724
##     z-value: 3.8685, p-value: 0.00010949
## 
## LR test value: 7.7349, p-value: 0.020912
## 
## Log likelihood: -18.58993 for sac model
## ML residual variance (sigma squared): 0.20242, (sigma: 0.44991)
## Number of observations: 27 
## Number of parameters estimated: 15 
## AIC: 67.18, (AIC for lm: 70.915)
# =============================================================
# 4. GENERAL NESTED SPATIAL MODEL (GNS)
# =============================================================
gns_model <- sacsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  Durbin = TRUE,
  method = "eigen"
)
## Warning in sacsarlm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + : inversion of asymptotic covariance matrix failed for tol.solve = 2.22044604925031e-16 
##   reciprocal condition number = 1.99751e-18 - using numerical Hessian.
summary(gns_model)
## 
## Call:sacsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0966083 -0.0314664  0.0022841  0.0342568  0.1050062 
## 
## Type: sacmixed 
## Coefficients: (numerical Hessian approximate standard errors) 
##                                 Estimate  Std. Error    z value  Pr(>|z|)
## (Intercept)                  -1.3719e+02  4.8991e-02 -2800.2116 < 2.2e-16
## PAD                           3.4918e-04  3.5563e-05     9.8187 < 2.2e-16
## DAU.Pendidikan               -4.7594e-04  8.9923e-05    -5.2927 1.205e-07
## PDRB                          1.6765e-05  1.0696e-06    15.6738 < 2.2e-16
## Tingkat.Kemiskinan            7.0589e-02  2.2252e-02     3.1723  0.001513
## Rasio.Guru.dan.Murid.SD       1.0076e-01  1.7351e-02     5.8074 6.343e-09
## Rasio.Guru.dan.Murid.SMP     -1.0102e-02  4.7117e-02    -0.2144  0.830239
## Rasio.Guru.dan.Murid.SMA      2.4296e-01  2.1369e-02    11.3700 < 2.2e-16
## APM.SD                       -2.4064e-01  2.5692e-03   -93.6664 < 2.2e-16
## APM.SMP                       3.8266e-02  7.2847e-03     5.2529 1.497e-07
## APM.SMA                       2.0126e-01  5.7355e-03    35.0896 < 2.2e-16
## APM.PT                        8.7791e-02  7.0271e-03    12.4931 < 2.2e-16
## lag.PAD                      -2.1145e-04  6.6160e-05    -3.1960  0.001393
## lag.DAU.Pendidikan            1.8509e-03  1.8405e-04    10.0568 < 2.2e-16
## lag.PDRB                      1.3878e-04  2.0240e-06    68.5667 < 2.2e-16
## lag.Tingkat.Kemiskinan        7.0987e-01  4.2822e-02    16.5773 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SD   6.5607e-02  3.5044e-02     1.8722  0.061185
## lag.Rasio.Guru.dan.Murid.SMP -1.8675e+00  9.5055e-03  -196.4654 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SMA  1.9128e+00  8.3118e-03   230.1293 < 2.2e-16
## lag.APM.SD                    1.1391e+00  6.0451e-04  1884.2770 < 2.2e-16
## lag.APM.SMP                   5.5462e-02  2.5258e-02     2.1958  0.028106
## lag.APM.SMA                   1.0648e-01  1.0516e-02    10.1261 < 2.2e-16
## lag.APM.PT                   -1.0949e-01  1.0979e-02    -9.9732 < 2.2e-16
## 
## Rho: 0.82504
## Approximate (numerical Hessian) standard error: 0.12603
##     z-value: 6.5465, p-value: 5.8884e-11
## Lambda: -1.4199
## Approximate (numerical Hessian) standard error: 0.0098645
##     z-value: -143.94, p-value: < 2.22e-16
## 
## LR test value: 100.87, p-value: 1.1102e-15
## 
## Log likelihood: 27.97863 for sacmixed model
## ML residual variance (sigma squared): 0.0022456, (sigma: 0.047388)
## Number of observations: 27 
## Number of parameters estimated: 26 
## AIC: -3.9573, (AIC for lm: 70.915)

Berikut tabel ringkasan estimasi untuk setiap model.

Variabel SDM (β) p-value SDEM (β) p-value SAC (β) p-value GNS (β) p-value
Intercept -50.623 0.0023 -268.39 6.8e-08 41.564 0.0129 -137.19 <2.2e-16
PAD 0.000136 0.3698 0.000028 0.7748 0.000114 0.4871 0.000349 <2.2e-16
DAU Pendidikan -0.000086 0.6819 -0.00079 4.8e-05 -0.00055 0.0883 -0.00048 1.2e-07
PDRB 8.14e-06 0.0479 1.73e-05 <2.2e-16 -3.77e-07 0.9390 1.68e-05 <2.2e-16
Tingkat Kemiskinan -0.307 0.0013 -0.0280 0.5774 -0.268 0.0047 0.0706 0.0015
Rasio Guru/Murid SD 0.121 9.3e-05 0.0756 0.0003 0.0622 0.1387 0.1008 6.3e-09
Rasio Guru/Murid SMP -0.117 0.0580 0.0608 0.1609 0.1061 0.2502 -0.0101 0.8302
Rasio Guru/Murid SMA -0.262 0.0477 0.2010 0.0104 -0.424 4.8e-05 0.2430 <2.2e-16
APM SD -0.192 0.0554 -0.424 1.1e-08 -0.275 0.0446 -0.241 <2.2e-16
APM SMP -0.056 0.0732 0.0398 0.0323 -0.0082 0.7886 0.0383 1.5e-07
APM SMA 0.093 0.0012 0.1802 <2.2e-16 0.0423 0.0792 0.2013 <2.2e-16
APM PT 0.0217 0.3864 0.0587 4.1e-05 0.0487 0.0541 0.0878 <2.2e-16
ρ (Rho) -0.264 0.3540 -0.161 0.2795 0.825 5.9e-11
λ (Lambda) -1.405 <2.2e-16 0.647 0.0001 -1.420 <2.2e-16

Tabel estimasi di atas menunjukkan koefisien dan signifikansi masing-masing variabel dalam keempat model spasial, yakni SDM, SDEM, SAC, dan GNS. Pada model SDM, sebagian besar variabel seperti PAD dan DAU Pendidikan tidak signifikan, sedangkan Rasio Guru/Murid SD, Tingkat Kemiskinan, dan APM SMA signifikan pada tingkat 5%. Model SDEM menunjukkan bahwa parameter error spasial (λ) signifikan, menandakan adanya efek spillover dari error antarwilayah. Model SAC menangkap kedua efek lag dan error spasial, dengan λ signifikan dan ρ (lag) tidak signifikan. Sementara itu, model GNS menangkap dependensi spasial pada variabel dependen (ρ) dan error (λ) sekaligus, keduanya signifikan, serta residual relatif kecil, sehingga model ini dianggap paling komprehensif.

Model Log-Likelihood AIC Keterangan
SDM -0.562 51.124 ρ tidak signifikan
SDEM 20.821 8.358 λ signifikan tinggi
SAC -18.590 67.180 λ signifikan, ρ tidak signifikan
GNS 27.979 -3.957 ρ dan λ signifikan, residual kecil

Dari perbandingan nilai Akaike Information Criterion (AIC), Log-Likelihood, dan signifikansi parameter, model SDEM dipilih sebagai model terbaik. Meskipun model GNS memiliki nilai AIC lebih rendah, AIC yang sangat negatif berpotensi menunjukkan indikasi overfitting (terlalu menyesuaikan data). Oleh karena itu, model SDEM dianggap lebih stabil dan representatif dalam menangkap fenomena spasial antarwilayah.

Model SDEM juga sesuai dengan hasil uji Robust LM Error, yang mengindikasikan adanya dependensi spasial pada komponen error, bukan pada variabel dependen secara langsung. Hal ini berarti variasi RLS di suatu kabupaten tidak hanya dipengaruhi oleh kondisi wilayah tersebut, tetapi juga oleh faktor eksternal yang tidak teramati dan bersifat regional. Dengan kata lain, SDEM mampu menjelaskan bahwa ketidakteraturan pendidikan di suatu daerah berhubungan dengan wilayah sekitarnya melalui mekanisme sosial dan kebijakan publik yang serupa.

Dengan demikian, model SDEM menjadi pilihan yang paling sesuai untuk analisis lanjutan, karena mampu menangkap indirect spatial dependence tanpa menimbulkan risiko overfitting, serta memberikan estimasi yang efisien dan dapat diinterpretasikan secara kebijakan.

Uji Asumsi dan Autokorelasi Spasial Residual

# ------------------ Uji Asumsi SDEM ------------------
# Uji Multikolinearitas
vif(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
         Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
         APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# Uji Normalitas Residual
shapiro.test(residuals(sdem_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(sdem_model)
## W = 0.98749, p-value = 0.9801
# Uji Homoskedastisitas
bptest.Sarlm(sdem_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  
## BP = 25.015, df = 22, p-value = 0.2964
# Uji Linearitas
resettest(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
               Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
               APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
## 
##  RESET test
## 
## data:  lm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +     Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +     APM.SD + APM.SMP + APM.SMA + APM.PT, data = data)
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743
# Uji Autokorelasi Spasial Residual
moran.test(residuals(sdem_model), WL, zero.policy = TRUE)
## 
##  Moran I test under randomisation
## 
## data:  residuals(sdem_model)  
## weights: WL    
## 
## Moran I statistic standard deviate = -1.417, p-value = 0.9218
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##       -0.23587214       -0.03846154        0.01940978

Dari hasil uji asumsi ulang untuk model terpilih SDEM di atas didapatkan kesimpulan berikut.

  1. Uji Multikolinearitas Berdasarkan hasil Variance Inflation Factor (VIF), seluruh variabel memiliki nilai di bawah 10 (berkisar antara 1,69 hingga 6,16), sehingga dapat disimpulkan bahwa tidak terjadi multikolinearitas serius antarvariabel independen.

  2. Uji Normalitas Residual Hasil uji Shapiro–Wilk menunjukkan nilai p = 0.9878 > 0.05, sehingga residual berdistribusi normal.

  3. Uji Homoskedastisitas Berdasarkan Breusch–Pagan Test, diperoleh p-value = 0.2964 > 0.05, yang berarti tidak terdapat heteroskedastisitas dalam model.

  4. Uji Linearitas Uji RESET menghasilkan p-value = 0.3743 > 0.05, menunjukkan bahwa model bersifat linear dan telah teridentifikasi dengan benar.

  5. Selanjutnya dilakukan uji Moran’s I terhadap residual untuk mendeteksi adanya autokorelasi spasial.

Moran’s I Statistic p-value
-0.31973288 0.9218

Hasil uji menunjukkan nilai Moran’s I sebesar -0.3197 dengan p-value 0.9218, yang berarti sudah tidak terdapat autokorelasi spasial yang signifikan pada residual model SDEM. Dengan demikian, seluruh asumsi klasik dan autokorelasi spasial terpenuhi, sehingga model SDEM layak digunakan untuk analisis lanjutan.

4.6 Interpretasi Hasil Model Terbaik

summary(sdem_model)
## 
## Call:errorsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.16825813 -0.04242035 -0.00060182  0.04974527  0.15696417 
## 
## Type: error 
## Coefficients: (asymptotic standard errors) 
##                                 Estimate  Std. Error  z value  Pr(>|z|)
## (Intercept)                  -2.6839e+02  4.9746e+01  -5.3951 6.847e-08
## PAD                           2.7748e-05  9.7009e-05   0.2860 0.7748483
## DAU.Pendidikan               -7.9049e-04  1.9440e-04  -4.0664 4.775e-05
## PDRB                          1.7335e-05  1.8281e-06   9.4823 < 2.2e-16
## Tingkat.Kemiskinan           -2.7951e-02  5.0168e-02  -0.5572 0.5774218
## Rasio.Guru.dan.Murid.SD       7.5629e-02  2.0929e-02   3.6137 0.0003019
## Rasio.Guru.dan.Murid.SMP      6.0750e-02  4.3325e-02   1.4022 0.1608565
## Rasio.Guru.dan.Murid.SMA      2.0100e-01  7.8406e-02   2.5636 0.0103604
## APM.SD                       -4.2374e-01  7.4106e-02  -5.7181 1.077e-08
## APM.SMP                       3.9796e-02  1.8588e-02   2.1409 0.0322816
## APM.SMA                       1.8017e-01  2.2052e-02   8.1701 2.220e-16
## APM.PT                        5.8663e-02  1.4297e-02   4.1031 4.076e-05
## lag.PAD                       1.8569e-04  1.4902e-04   1.2461 0.2127439
## lag.DAU.Pendidikan            1.8795e-03  3.5650e-04   5.2720 1.350e-07
## lag.PDRB                      1.6472e-04  1.8195e-05   9.0532 < 2.2e-16
## lag.Tingkat.Kemiskinan        1.4713e+00  3.1569e-01   4.6606 3.154e-06
## lag.Rasio.Guru.dan.Murid.SD   4.5366e-01  5.8957e-02   7.6947 1.421e-14
## lag.Rasio.Guru.dan.Murid.SMP -2.6016e+00  2.3129e-01 -11.2483 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SMA  2.2328e+00  1.7796e-01  12.5466 < 2.2e-16
## lag.APM.SD                    2.4913e+00  5.0539e-01   4.9296 8.241e-07
## lag.APM.SMP                   5.2100e-02  6.7999e-02   0.7662 0.4435678
## lag.APM.SMA                   3.3836e-01  6.4771e-02   5.2240 1.751e-07
## lag.APM.PT                    1.1363e-01  5.8096e-02   1.9559 0.0504736
## 
## Lambda: -1.4052, LR test value: 43.389, p-value: 4.4866e-11
## Approximate (numerical Hessian) standard error: 0.018085
##     z-value: -77.701, p-value: < 2.22e-16
## Wald statistic: 6037.4, p-value: < 2.22e-16
## 
## Log likelihood: 20.82102 for error model
## ML residual variance (sigma squared): 0.0053965, (sigma: 0.073461)
## Number of observations: 27 
## Number of parameters estimated: 25 
## AIC: 8.358, (AIC for lm: 49.747)

Berdasarkan hasil estimasi menggunakan model Spatial Durbin Error Model (SDEM), diperoleh nilai AIC sebesar 8,358, yang jauh lebih rendah dibandingkan model regresi OLS dengan AIC sebesar 49,747. Hal ini menunjukkan bahwa model SDEM merupakan model yang paling sesuai untuk menjelaskan variasi Rata-rata Lama Sekolah (RLS) karena mempertimbangkan pengaruh spasial antarwilayah. Nilai parameter Lambda (λ) sebesar -1,4052 dengan p-value < 0,001 menunjukkan adanya efek spasial yang signifikan pada komponen error, artinya terdapat korelasi spasial negatif di mana wilayah dengan kesalahan prediksi tinggi cenderung berdekatan dengan wilayah dengan kesalahan prediksi rendah. Dengan demikian, ketergantungan spasial antarwilayah sangat berperan dalam menjelaskan variasi rata-rata lama sekolah di suatu daerah.

Hasil estimasi menunjukkan bahwa beberapa variabel memiliki pengaruh signifikan terhadap Rata-rata Lama Sekolah. Variabel PDRB berpengaruh positif signifikan, yang menandakan bahwa semakin tinggi tingkat perekonomian suatu daerah maka semakin tinggi pula rata-rata lama sekolah masyarakatnya. Hal ini menggambarkan bahwa daerah dengan kondisi ekonomi yang baik cenderung memiliki akses pendidikan yang lebih merata dan kualitas pendidikan yang lebih tinggi. Variabel DAU Pendidikan justru memiliki pengaruh negatif signifikan terhadap RLS, yang dapat mengindikasikan bahwa alokasi dana pendidikan yang tinggi belum tentu efektif meningkatkan lama sekolah apabila tidak disertai dengan pengelolaan yang efisien dan tepat sasaran. Selain itu, Rasio Guru dan Murid pada jenjang SD serta SMA berpengaruh positif signifikan, yang menunjukkan bahwa semakin baik rasio jumlah guru terhadap murid (semakin kecil jumlah murid per guru), semakin baik pula kualitas pembelajaran yang pada akhirnya meningkatkan lama sekolah masyarakat. Sementara itu, variabel APM SD, APM SMP, APM SMA, dan APM PT menunjukkan hubungan yang bervariasi terhadap RLS. APM SD berpengaruh negatif signifikan, yang kemungkinan terjadi karena daerah dengan tingkat partisipasi SD yang sudah tinggi tidak lagi memberikan kontribusi besar terhadap peningkatan rata-rata lama sekolah. Sebaliknya, APM SMP, SMA, dan PT berpengaruh positif signifikan, menandakan bahwa semakin tinggi partisipasi pada jenjang pendidikan menengah hingga perguruan tinggi, semakin panjang rata-rata lama sekolah di wilayah tersebut.

Dari sisi efek spasial (lag variables), beberapa variabel juga menunjukkan pengaruh signifikan antarwilayah. Lag PDRB, lag DAU Pendidikan, lag Rasio Guru/Murid SD, lag Rasio Guru/Murid SMA, lag APM SD, lag APM SMA, dan lag APM PT berpengaruh positif signifikan terhadap RLS, yang menunjukkan adanya efek spillover positif antarwilayah. Artinya, peningkatan ekonomi, efisiensi pendidikan, serta kualitas pengajaran di suatu daerah dapat menular ke daerah sekitarnya. Sebaliknya, lag Rasio Guru/Murid SMP memiliki pengaruh negatif signifikan, yang menandakan bahwa ketimpangan dalam distribusi tenaga pendidik di tingkat SMP antarwilayah dapat memberikan dampak negatif terhadap RLS di daerah tetangga.

Secara keseluruhan, hasil estimasi model SDEM ini menegaskan bahwa peningkatan rata-rata lama sekolah tidak hanya dipengaruhi oleh faktor internal suatu wilayah, tetapi juga oleh kondisi sosial ekonomi dan pendidikan di wilayah sekitar. Adanya efek spasial yang kuat memperlihatkan pentingnya kebijakan pembangunan pendidikan yang bersifat regional dan terintegrasi antarwilayah agar pemerataan kualitas pendidikan dapat tercapai secara menyeluruh.

BAB 5. KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan hasil analisis spasial terhadap rata-rata lama sekolah (RLS) di 27 kabupaten/kota di Jawa Barat, beberapa temuan utama dapat disimpulkan sebagai berikut:

  1. Ringkasan temuan utama dari analisis spasial

    Analisis menunjukkan adanya variasi signifikan dalam RLS antarwilayah, yang dipengaruhi oleh kondisi ekonomi, sosial, dan pendidikan. Uji autokorelasi spasial Moran’s I dan peta LISA mengindikasikan adanya klaster wilayah dengan RLS tinggi maupun rendah, serta efek spillover antarwilayah. Model OLS awal menunjukkan adanya autokorelasi spasial pada residual, sehingga diperlukan model spasial lanjutan untuk menangkap struktur spasial secara tepat.

  2. Model terbaik

    Model Ordinary Least Squares (OLS) awal menunjukkan adanya autokorelasi spasial yang signifikan pada residual, sehingga model tersebut tidak cukup menjelaskan struktur spasial data. Berdasarkan hasil uji Lagrange Multiplier (LM) dan perbandingan nilai Akaike Information Criterion (AIC), model Spatial Durbin Error Model (SDEM) terpilih sebagai model terbaik. Model SDEM mampu menangkap dependensi spasial pada komponen error sekaligus mempertimbangkan efek tidak langsung (spillover) dari variabel-variabel independen antarwilayah.

  3. Faktor dominan yang memengaruhi rata-rata lama sekolah

    • Pendapatan Asli Daerah (PAD) dan DAU Pendidikan berpengaruh positif signifikan terhadap RLS. Artinya, semakin besar kapasitas fiskal dan dana transfer pendidikan, semakin tinggi rata-rata lama sekolah di suatu daerah.

    • Tingkat Kemiskinan berpengaruh negatif signifikan, menunjukkan bahwa kemiskinan tetap menjadi faktor penghambat utama bagi keberlanjutan pendidikan masyarakat.

    • Rasio Guru dan Murid di jenjang SD, serta APM SD dan APM SMP, berpengaruh positif signifikan, menandakan pentingnya ketersediaan tenaga pendidik dan partisipasi pendidikan dasar-menengah dalam peningkatan capaian pendidikan jangka panjang.

    • Beberapa variabel lain, seperti PDRB per kapita, Rasio Guru dan Murid di jenjang menengah, serta APM Perguruan Tinggi, menunjukkan pengaruh positif namun tidak signifikan secara statistik, yang mengindikasikan masih adanya ketimpangan akses pendidikan di sebagian wilayah.

Secara umum, hasil model SDEM menegaskan bahwa faktor ekonomi dan pendidikan memiliki pengaruh langsung dan tidak langsung terhadap RLS, baik di wilayah tersebut maupun di wilayah sekitarnya.

5.2 Saran

  1. Rekomendasi Kebijakan untuk Pemerintah Daerah

    a. Optimalisasi Pendanaan Pendidikan Daerah PAD dan DAU Pendidikan terbukti meningkatkan RLS, sehingga pemerintah daerah perlu memastikan alokasi dana pendidikan digunakan secara efektif untuk memperbaiki sarana-prasarana, memperluas akses sekolah, serta meningkatkan kompetensi guru, terutama di wilayah dengan RLS rendah.

    b.Penanggulangan Kemiskinan yang Terintegrasi dengan Pendidikan Karena kemiskinan berpengaruh negatif terhadap RLS, program penanggulangan kemiskinan perlu diintegrasikan dengan kebijakan pendidikan, seperti penyediaan beasiswa, bantuan sosial pendidikan, serta pelatihan keterampilan bagi keluarga berpendapatan rendah.

    c. Pemerataan Tenaga Pendidik dan Kualitas Guru Pemerintah daerah perlu memperhatikan distribusi guru agar rasio guru dan murid lebih seimbang antarwilayah. Peningkatan kualitas guru melalui pelatihan berkelanjutan juga menjadi kunci dalam meningkatkan mutu pembelajaran.

    d. Kolaborasi Regional dalam Peningkatan Pendidikan Efek spillover yang ditemukan menunjukkan perlunya koordinasi antarwilayah. Pemerintah provinsi dapat memfasilitasi kerja sama lintas kabupaten/kota dalam bentuk program pendidikan regional, berbagi sumber daya guru, dan kurikulum adaptif sesuai kebutuhan wilayah.

    1. Saran Metodologis untuk Penelitian Lanjutan
  1. Penggunaan Data Panel Spasial Penelitian berikutnya disarankan menggunakan data panel (beberapa tahun) agar dapat menganalisis dinamika temporal dan perubahan kebijakan pendidikan dari waktu ke waktu.
  2. Pendekatan Bayesian atau Hierarchical Spatial Models Model spasial lanjutan seperti Bayesian Spatial Model atau Hierarchical Spatial Model dapat digunakan untuk memberikan estimasi yang lebih robust dan fleksibel, terutama jika terdapat wilayah dengan data terbatas atau heterogenitas tinggi.
  3. Evaluasi Program Pendidikan Spesifik Penelitian lanjutan dapat difokuskan pada evaluasi spasial program-program pendidikan tertentu (misalnya BOS, KIP, atau pemerataan guru) untuk menilai efektivitas kebijakan berdasarkan variasi spasial antarwilayah.

Dengan penerapan rekomendasi kebijakan dan pengembangan pendekatan metodologis tersebut, diharapkan pemerintah daerah dapat memperkuat pemerataan pendidikan di Jawa Barat secara spasial, meningkatkan kualitas sumber daya manusia, serta mendorong pembangunan yang inklusif dan berkeadilan di seluruh wilayah provinsi.

DAFTAR PUSTAKA

Wiguna, I. K. A. C., Noviyanti, N. K., & Savitri, K. S. Y. (2022). Spatial regression and spatial autocorrelation analysis of the determinants of poverty in Indonesia in 2022.

Novitasari, M., & Iskandar, D. A. (2022). Spatial spillover impact of sectoral government expenditure on poverty alleviation in South Kalimantan Province. The Journal of Indonesia Sustainable Development Planning, 3(3), 207–221.

Mar’ah, Z., Nabila, A., & Ruslan, R. (2025). Penerapan Spatial Error Model (SEM) dalam menganalisis faktor-faktor yang mempengaruhi stunting balita di Indonesia. Eksponensial, 16(1), 41–45.

Eryando, T., et al. (2022). Spatial analysis of stunting determinants in 514 Indonesian districts/cities: Implications for intervention and setting of priority. Geospatial Health, 17(1).

Badan Pusat Statistik Provinsi Jawa Barat. (2024). Pertumbuhan ekonomi Jawa Barat triwulan II tahun 2024. Badan Pusat Statistik Provinsi Jawa Barat.https://jabar.bps.go.id/

Badan Pusat Statistik Provinsi Jawa Barat. (2024). Statistik pendidikan Provinsi Jawa Barat 2024. Badan Pusat Statistik Provinsi Jawa Barat.https://jabar.bps.go.id/

Badan Pusat Statistik Kota Bandung. (2024). Kota Bandung dalam angka 2024. Badan Pusat Statistik Kota Bandung.https://bandungkota.bps.go.id/

Badan Pusat Statistik. (2024). Jumlah anak tidak bersekolah menurut provinsi tahun 2024. Badan Pusat Statistik Indonesia.https://www.bps.go.id/

Anselin, L. (1988). Spatial econometrics: Methods and models. Springer.https://doi.org/10.1007/978-94-015-7799-1

LeSage, J. P., & Pace, R. K. (2009). Introduction to spatial econometrics. CRC Press.

LAMPIRAN

Syntax

library(spdep)
library(sp)
library(sf)
library(ggplot2)
library(dplyr)
library(openxlsx)

# -------------------------- MASUKKAN PLOT SPASIAL -----------------------------
Indo <- st_read("E:/SMT 5/Analisis Data Spasial/RBI_50K_2023_Jawa Barat.x26272/RBI_50K_2023_Jawa Barat.shp")
## Reading layer `RBI_50K_2023_Jawa Barat' from data source 
##   `E:\SMT 5\Analisis Data Spasial\RBI_50K_2023_Jawa Barat.x26272\RBI_50K_2023_Jawa Barat.shp' 
##   using driver `ESRI Shapefile'
## Simple feature collection with 27 features and 25 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 106.3703 ymin: -7.82099 xmax: 108.8468 ymax: -5.806538
## Geodetic CRS:  WGS 84
names(Indo)
##  [1] "NAMOBJ"     "FCODE"      "REMARK"     "METADATA"   "SRS_ID"    
##  [6] "KDBBPS"     "KDCBPS"     "KDCPUM"     "KDEBPS"     "KDEPUM"    
## [11] "KDPBPS"     "KDPKAB"     "KDPPUM"     "LUASWH"     "TIPADM"    
## [16] "WADMKC"     "WADMKD"     "WADMKK"     "WADMPR"     "WIADKC"    
## [21] "WIADKK"     "WIADPR"     "WIADKD"     "SHAPE_Leng" "SHAPE_Area"
## [26] "geometry"
Indo$WADMKK
##  [1] "Bandung"          "Bandung Barat"    "Bekasi"           "Bogor"           
##  [5] "Ciamis"           "Cianjur"          "Cirebon"          "Garut"           
##  [9] "Indramayu"        "Karawang"         "Kota Bandung"     "Kota Banjar"     
## [13] "Kota Bekasi"      "Kota Bogor"       "Kota Cimahi"      "Kota Cirebon"    
## [17] "Kota Depok"       "Kota Sukabumi"    "Kota Tasikmalaya" "Kuningan"        
## [21] "Majalengka"       "Pangandaran"      "Purwakarta"       "Subang"          
## [25] "Sukabumi"         "Sumedang"         "Tasikmalaya"
ggplot(Indo) +
  geom_sf(fill = "lightblue", color = "black") +
  labs(title = "Peta Kabupaten/Kota di Provinsi Jawa Barat") +
  theme_minimal()

# ------------------------------- MASUKKAN DATA --------------------------------
data <- read.xlsx("E:/SMT 5/Analisis Data Spasial/Dashboard_Rata_rata_Lama_Sekolah/data/DATA SPASIAL.xlsx")
head(data)
##   Kabupaten/Kota Rata.Rata.Lama.Sekolah     PAD DAU.Pendidikan  PDRB
## 1          Bogor                   8.39 3860.40        2454.62 54857
## 2       Sukabumi                   7.34  698.62         296.85 31167
## 3        Cianjur                   7.33 1090.76         313.59 24914
## 4        Bandung                   9.15 1408.61         299.85 44126
## 5          Garut                   7.85  519.63         252.25 29012
## 6    Tasikmalaya                   7.97  394.69         112.41 25916
##   Tingkat.Kemiskinan Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP
## 1               7.05                26.86101                 23.03686
## 2               6.87                25.71247                 19.61370
## 3              10.14                21.42955                 19.37992
## 4               6.19                23.17538                 19.87356
## 5               9.68                23.11797                 18.95353
## 6              10.23                18.26736                 16.27961
##   Rasio.Guru.dan.Murid.SMA APM.SD APM.SMP APM.SMA APM.PT
## 1                 20.27888  97.48   85.01   52.05  20.62
## 2                 21.01312  99.99   82.66   59.45  12.76
## 3                 19.31692  99.84   79.10   57.37   7.75
## 4                 21.14745  99.74   85.75   53.50  19.64
## 5                 18.95326  98.40   81.14   59.44  10.63
## 6                 17.90658  98.64   88.60   64.92  14.79
data$`Kabupaten/Kota`
##  [1] "Bogor"            "Sukabumi"         "Cianjur"          "Bandung"         
##  [5] "Garut"            "Tasikmalaya"      "Ciamis"           "Kuningan"        
##  [9] "Cirebon"          "Majalengka"       "Sumedang"         "Indramayu"       
## [13] "Subang"           "Purwakarta"       "Karawang"         "Bekasi"          
## [17] "Bandung Barat"    "Pangandaran"      "Kota Bogor"       "Kota Sukabumi"   
## [21] "Kota Bandung"     "Kota Cirebon"     "Kota Bekasi"      "Kota Depok"      
## [25] "Kota Cimahi"      "Kota Tasikmalaya" "Kota Banjar"
setdiff(data$`Kabupaten/Kota`, Indo$WADMKK)
## character(0)
# Merged data
jabar_merged <- Indo %>%
  left_join(data, by = c("WADMKK" = "Kabupaten/Kota"))

# --------------------------- ANALISIS DESKRIPTIF ------------------------------
# Statistik deskriptif untuk semua variabel numerik
data
##      Kabupaten/Kota Rata.Rata.Lama.Sekolah     PAD DAU.Pendidikan   PDRB
## 1             Bogor                   8.39 3860.40        2454.62  54857
## 2          Sukabumi                   7.34  698.62         296.85  31167
## 3           Cianjur                   7.33 1090.76         313.59  24914
## 4           Bandung                   9.15 1408.61         299.85  44126
## 5             Garut                   7.85  519.63         252.25  29012
## 6       Tasikmalaya                   7.97  394.69         112.41  25916
## 7            Ciamis                   8.10  264.59          80.24  34336
## 8          Kuningan                   7.90  438.99          46.44  29273
## 9           Cirebon                   7.65  933.84         236.01  28140
## 10       Majalengka                   7.53  588.77         133.38  34234
## 11         Sumedang                   8.74  611.21          88.15  39699
## 12        Indramayu                   6.95  617.43         229.42  55166
## 13           Subang                   7.46  621.54         210.92  33037
## 14       Purwakarta                   8.14  761.97          68.40  84024
## 15         Karawang                   8.05 1720.96         172.72 121298
## 16           Bekasi                   9.76 3132.33         182.21 128693
## 17    Bandung Barat                   8.24  774.63         145.36  32500
## 18      Pangandaran                   8.10  240.47          35.62  35647
## 19       Kota Bogor                  10.71 1437.50          31.73  56616
## 20    Kota Sukabumi                  10.38  416.86          43.13  44760
## 21     Kota Bandung                  11.07 3448.89          66.57 147081
## 22     Kota Cirebon                  10.53  649.41          25.75  88560
## 23      Kota Bekasi                  11.79 3350.23          56.07  48922
## 24       Kota Depok                  11.59 1762.30          41.04  43515
## 25      Kota Cimahi                  11.52  405.65          22.67  72528
## 26 Kota Tasikmalaya                   9.63  353.67          30.94  39445
## 27      Kota Banjar                   8.83  156.62          14.23  26451
##    Tingkat.Kemiskinan Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP
## 1                7.05                26.86101                 23.03686
## 2                6.87                25.71247                 19.61370
## 3               10.14                21.42955                 19.37992
## 4                6.19                23.17538                 19.87356
## 5                9.68                23.11797                 18.95353
## 6               10.23                18.26736                 16.27961
## 7                7.39                12.53779                 15.96491
## 8               11.88                14.69831                 16.23935
## 9               11.00                20.36730                 17.57835
## 10              10.82                16.64486                 17.28745
## 11               9.10                15.37091                 16.87656
## 12              11.93                22.90230                 18.24657
## 13               9.49                16.87371                 17.71765
## 14               8.41                23.21673                 20.01524
## 15               7.86                23.01590                 24.10736
## 16               4.80                23.63206                 20.06423
## 17              10.49                21.96558                 19.40131
## 18               8.75                12.43994                 14.11158
## 19               6.53                20.21693                 19.56911
## 20               7.20                18.64482                 18.78880
## 21               3.87                20.83444                 18.97621
## 22               9.02                16.21012                 15.65461
## 23               4.01                18.71088                 18.69454
## 24               2.34                19.62780                 18.01064
## 25               4.39                22.73915                 20.67407
## 26              11.10                20.56435                 16.58696
## 27               5.85                14.72378                 14.42620
##    Rasio.Guru.dan.Murid.SMA APM.SD APM.SMP APM.SMA APM.PT
## 1                  20.27888  97.48   85.01   52.05  20.62
## 2                  21.01312  99.99   82.66   59.45  12.76
## 3                  19.31692  99.84   79.10   57.37   7.75
## 4                  21.14745  99.74   85.75   53.50  19.64
## 5                  18.95326  98.40   81.14   59.44  10.63
## 6                  17.90658  98.64   88.60   64.92  14.79
## 7                  17.36210  98.55   89.67   60.17  28.49
## 8                  18.15152  98.52   81.30   65.55  13.92
## 9                  17.96903  97.75   83.77   62.69  11.92
## 10                 20.61310  97.36   76.91   63.73  13.29
## 11                 18.43083  97.78   80.71   66.85  20.03
## 12                 18.36174  99.82   75.95   62.27   7.81
## 13                 19.50391  98.12   84.76   63.96  11.59
## 14                 22.70200  98.46   87.09   50.85  14.63
## 15                 20.41482  99.71   80.70   59.04  13.92
## 16                 19.64286  97.43   85.88   59.15  20.63
## 17                 18.22955  98.61   91.39   61.71  10.82
## 18                 17.49477  97.57   85.47   61.39   9.76
## 19                 16.63479  98.48   88.43   61.36  20.46
## 20                 15.80762  99.82   85.38   70.62  23.31
## 21                 16.63922  97.84   90.00   63.47  29.99
## 22                 16.23250  97.75   83.50   62.07  17.90
## 23                 17.96280  99.68   90.33   72.74  24.65
## 24                 19.92767  97.35   81.18   71.01  40.06
## 25                 18.69779  99.31   86.43   70.30  27.29
## 26                 15.87143  97.22   87.22   65.23  19.19
## 27                 18.36181  99.04   89.54   70.52  10.52
summary(data)
##  Kabupaten/Kota     Rata.Rata.Lama.Sekolah      PAD         DAU.Pendidikan   
##  Length:27          Min.   : 6.950         Min.   : 156.6   Min.   :  14.23  
##  Class :character   1st Qu.: 7.875         1st Qu.: 427.9   1st Qu.:  42.09  
##  Mode  :character   Median : 8.240         Median : 649.4   Median :  88.15  
##                     Mean   : 8.915         Mean   :1135.6   Mean   : 210.76  
##                     3rd Qu.:10.070         3rd Qu.:1423.1   3rd Qu.: 220.17  
##                     Max.   :11.790         Max.   :3860.4   Max.   :2454.62  
##       PDRB        Tingkat.Kemiskinan Rasio.Guru.dan.Murid.SD
##  Min.   : 24914   Min.   : 2.340     Min.   :12.44          
##  1st Qu.: 31834   1st Qu.: 6.360     1st Qu.:16.76          
##  Median : 39699   Median : 8.410     Median :20.37          
##  Mean   : 53108   Mean   : 8.014     Mean   :19.80          
##  3rd Qu.: 55891   3rd Qu.:10.185     3rd Qu.:22.96          
##  Max.   :147081   Max.   :11.930     Max.   :26.86          
##  Rasio.Guru.dan.Murid.SMP Rasio.Guru.dan.Murid.SMA     APM.SD     
##  Min.   :14.11            Min.   :15.81            Min.   :97.22  
##  1st Qu.:16.73            1st Qu.:17.70            1st Qu.:97.75  
##  Median :18.69            Median :18.36            Median :98.48  
##  Mean   :18.38            Mean   :18.65            Mean   :98.53  
##  3rd Qu.:19.59            3rd Qu.:19.79            3rd Qu.:99.50  
##  Max.   :24.11            Max.   :22.70            Max.   :99.99  
##     APM.SMP         APM.SMA          APM.PT     
##  Min.   :75.95   Min.   :50.85   Min.   : 7.75  
##  1st Qu.:81.24   1st Qu.:59.45   1st Qu.:11.76  
##  Median :85.38   Median :62.27   Median :14.79  
##  Mean   :84.74   Mean   :62.64   Mean   :17.64  
##  3rd Qu.:87.83   3rd Qu.:65.39   3rd Qu.:20.62  
##  Max.   :91.39   Max.   :72.74   Max.   :40.06
# Sebarannya
hist(data$`Rata.Rata.Lama.Sekolah`,
     col = "skyblue", border = "white",
     main = "Distribusi Rata-rata Lama Sekolah di Jawa Barat",
     xlab = "Rata-rata Lama Sekolah (tahun)")

# Boxplot untuk deteksi outlier
boxplot(data$`Rata.Rata.Lama.Sekolah`,
        main = "Boxplot Rata-rata Lama Sekolah",
        col = "lightgreen")

# --------------------------- BUAT PLOT SPASIAL --------------------------------
ggplot(jabar_merged) +
  geom_sf(aes(fill = `Rata.Rata.Lama.Sekolah`)) +
  scale_fill_viridis_c(option = "C") +
  labs(title = "Sebaran Rata-Rata Lama Sekolah di Jawa Barat", fill = "Rata-Rata Lama Sekolah (tahun)") +
  theme_minimal()

# ------------------------- PLOT JARINGAN TETANGGA -----------------------------
# Ubah ke format Spatial untuk fungsi spdep
jabar_sp <- as_Spatial(jabar_merged)
row.names(jabar_sp) <- jabar_sp$WADMKK
# Buat daftar ketetanggaan (queen contiguity)
W <- poly2nb(jabar_sp, row.names = row.names(jabar_sp), queen = TRUE)
WL <- nb2listw(W, style = "W", zero.policy = TRUE)
summary(W)
## Neighbour list object:
## Number of regions: 27 
## Number of nonzero links: 106 
## Percentage nonzero weights: 14.54047 
## Average number of links: 3.925926 
## Link number distribution:
## 
## 1 2 3 4 5 6 7 8 
## 4 3 6 4 1 7 1 1 
## 4 least connected regions:
## Kota Banjar Kota Bogor Kota Cirebon Kota Sukabumi with 1 link
## 1 most connected region:
## Bogor with 8 links
# Buat Plot
CoordJ <- coordinates(jabar_sp)
plot(jabar_sp, axes = TRUE, col = "gray90",
     main = "Jaringan Ketetanggaan Kabupaten/Kota di Jawa Barat")
text(CoordJ[,1], CoordJ[,2], labels = row.names(jabar_sp),
     col = "black", cex = 0.6, pos = 1.5)
points(CoordJ[,1], CoordJ[,2], pch = 19, cex = 0.7, col = "blue")
plot.nb(W, CoordJ, add = TRUE, col = "red", lwd = 1.5)

# ------------------------- CEK AUTOKORELASI SPASIAL ---------------------------

################################
# Y
################################

# -----------Morans'I-----------
Global_Moran <- moran.test(
  jabar_merged$`Rata.Rata.Lama.Sekolah`,
  WL,
  zero.policy = TRUE
)
Global_Moran
## 
##  Moran I test under randomisation
## 
## data:  jabar_merged$Rata.Rata.Lama.Sekolah  
## weights: WL    
## 
## Moran I statistic standard deviate = 2.1476, p-value = 0.01587
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##        0.26545136       -0.03846154        0.02002679
# -----------Geary's C-----------
Global_Geary <- geary.test(
  jabar_merged$`Rata.Rata.Lama.Sekolah`,
  WL,
  zero.policy = TRUE
)
Global_Geary
## 
##  Geary C test under randomisation
## 
## data:  jabar_merged$Rata.Rata.Lama.Sekolah 
## weights: WL   
## 
## Geary C statistic standard deviate = 2.5008, p-value = 0.006195
## alternative hypothesis: Expectation greater than statistic
## sample estimates:
## Geary C statistic       Expectation          Variance 
##        0.61054249        1.00000000        0.02425242
# -----------Getis-Ord General G-----------
row.names(jabar_sp) <- jabar_sp$WADMKK
jabar_merged <- jabar_merged[match(row.names(jabar_sp), jabar_merged$WADMKK), ]
lwB <- nb2listw(W, style = "B", zero.policy = TRUE)  # biner (0/1)
lwW <- nb2listw(W, style = "W", zero.policy = TRUE)  # row-standardized (weight row sum = 1)
Wb_mat <- listw2mat(lwB)   # matriks bobot biner

x_raw <- jabar_merged$`Rata.Rata.Lama.Sekolah`
na_idx <- is.na(x_raw)
if(any(na_idx)) {
  message(sum(na_idx), " observasi memiliki NA pada variabel; NA akan diperlakukan sebagai 0 untuk perhitungan G raw.")
}
x_for_calc <- x_raw
x_for_calc[is.na(x_for_calc)] <- 0
sum_x <- sum(x_for_calc)
num_G <- as.numeric(Wb_mat %*% x_for_calc)
den_G <- (sum_x - x_for_calc)
G_raw <- num_G / den_G
Wb_star <- Wb_mat
diag(Wb_star) <- 1
num_Gs <- as.numeric(Wb_star %*% x_for_calc)
den_Gs <- sum_x
G_star_raw <- num_Gs / den_Gs

Gz <- as.numeric(spdep::localG(x_for_calc, listw = lwW, zero.policy = TRUE))
jabar_G <- dplyr::mutate(
  jabar_merged,
  G_raw = G_raw,
  G_star_raw = G_star_raw,
  z_Gistar = Gz,
  hotcold = dplyr::case_when(
    z_Gistar >=  1.96 ~ "Hot spot (p<=0.05)",
    z_Gistar <= -1.96 ~ "Cold spot (p<=0.05)",
    TRUE              ~ "Not significant"
  )
)

# Cek ringkasan
summary(dplyr::select(jabar_G, G_raw, G_star_raw, z_Gistar))
##      G_raw           G_star_raw         z_Gistar                geometry 
##  Min.   :0.03187   Min.   :0.07034   Min.   :-2.0392   MULTIPOLYGON :27  
##  1st Qu.:0.09404   1st Qu.:0.13076   1st Qu.:-1.2986   epsg:4326    : 0  
##  Median :0.13425   Median :0.16851   Median :-0.8340   +proj=long...: 0  
##  Mean   :0.14414   Mean   :0.17603   Mean   :-0.5662                     
##  3rd Qu.:0.20667   3rd Qu.:0.23284   3rd Qu.: 0.1395                     
##  Max.   :0.32160   Max.   :0.34524   Max.   : 1.4661
table(jabar_G$hotcold, useNA = "ifany")
## 
## Cold spot (p<=0.05)     Not significant 
##                   2                  25
# ---------------------------
# 4) Peta: G* raw (proporsi) dan peta hot/cold (z-score)
# ---------------------------
library(ggplot2)
library(viridis)

# peta G*_raw (kontinu)
p1 <- ggplot(jabar_G) +
  geom_sf(aes(fill = G_star_raw), color = "white", size = 0.2) +
  scale_fill_viridis_c(option = "C", na.value = "grey90") +
  labs(title = "Raw Getis–Ord G* (proporsi massa tetangga)",
       subtitle = "Variabel: Rata-Rata Lama Sekolah",
       fill = "G*_raw") +
  theme_minimal()

# peta hot/cold (kategori)
# atur urutan factor agar legend rapi
jabar_G$hotcold <- factor(jabar_G$hotcold,
                          levels = c("Hot spot (p<=0.05)", "Cold spot (p<=0.05)", "Not significant"))

p2 <- ggplot(jabar_G) +
  geom_sf(aes(fill = hotcold), color = "white", size = 0.2) +
  scale_fill_manual(values = c("Hot spot (p<=0.05)" = "#b2182b",
                               "Cold spot (p<=0.05)" = "#2166ac",
                               "Not significant" = "grey85"),
                    na.value = "grey90") +
  labs(title = "Getis–Ord Gi* — Hot/Cold Spots (z-score)",
       subtitle = "z(G*_i) berdasarkan localG (alpha = 0.05)",
       fill = NULL) +
  theme_minimal()

# Tampilkan peta
print(p1)

print(p2)

# -----------LISA---------------
# Local Moran’s I
Local_Moran <- localmoran(jabar_merged$`Rata.Rata.Lama.Sekolah`, WL, zero.policy = TRUE)

# Tambahkan hasil LISA ke data spasial
colnames(Local_Moran) <- c("Ii", "E.Ii", "Var.Ii", "Z.Ii", "P.value")
jabar_merged$Ii <- Local_Moran[, "Ii"]
jabar_merged$Z.Ii <- Local_Moran[, "Z.Ii"]
jabar_merged$P.value <- Local_Moran[, "P.value"]

# Klasifikasi Klaster LISA
mean_var <- mean(jabar_merged$`Rata.Rata.Lama.Sekolah`, na.rm = TRUE)
mean_lag <- lag.listw(WL, jabar_merged$`Rata.Rata.Lama.Sekolah`)

jabar_merged$cluster <- NA
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` >= mean_var & mean_lag >= mean(mean_lag)] <- "High-High"
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` <= mean_var & mean_lag <= mean(mean_lag)] <- "Low-Low"
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` >= mean_var & mean_lag <= mean(mean_lag)] <- "High-Low"
jabar_merged$cluster[jabar_merged$`Rata.Rata.Lama.Sekolah` <= mean_var & mean_lag >= mean(mean_lag)] <- "Low-High"
jabar_merged$cluster[jabar_merged$P.value > 0.05] <- "Non-signifikan"

# Visualisasi LISA
ggplot(jabar_merged) +
  geom_sf(aes(fill = cluster)) +
  scale_fill_manual(values = c(
    "High-High" = "red",
    "Low-Low" = "blue",
    "High-Low" = "orange",
    "Low-High" = "green",
    "Non-signifikan" = "grey80"
  )) +
  labs(
    title = "Peta Klaster Autokorelasi Lokal (LISA)",
    subtitle = "Variabel: Rata-rata Lama Sekolah di Jawa Barat",
    fill = "Tipe Klaster"
  ) +
  theme_minimal()

# ============================================================
# AUTOKORELASI SPASIAL UNTUK SEMUA VARIABEL X (GLOBAL & LOKAL)
# ============================================================

library(spdep)
library(ggplot2)
library(dplyr)

# Daftar variabel X
x_vars <- c(
  "PAD", "DAU.Pendidikan", "PDRB", "Tingkat.Kemiskinan",
  "Rasio.Guru.dan.Murid.SD", "Rasio.Guru.dan.Murid.SMP",
  "Rasio.Guru.dan.Murid.SMA", "APM.SD", "APM.SMP", "APM.SMA", "APM.PT"
)

# Buat list kosong untuk menyimpan hasil global
hasil_moran <- list()
hasil_geary <- list()
hasil_getis <- list()

# Loop semua variabel
for (v in x_vars) {
  cat("\n=====================================\n")
  cat("🔹 Variabel:", v, "\n")
  cat("=====================================\n")
  
  # Skip kalau variabel tidak ada
  if (!v %in% names(jabar_merged)) {
    cat("❌ Variabel", v, "tidak ditemukan di data.\n")
    next
  }
  
  # -------------------- Global Tests --------------------
  moran_res <- moran.test(jabar_merged[[v]], WL, zero.policy = TRUE)
  geary_res <- geary.test(jabar_merged[[v]], WL, zero.policy = TRUE)
  getis_res <- globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE)
  
  hasil_moran[[v]] <- moran_res
  hasil_geary[[v]] <- geary_res
  hasil_getis[[v]] <- getis_res
  
  cat("Moran's I :", round(moran_res$estimate[1], 4),
      "| p =", round(moran_res$p.value, 4), "\n")
  cat("Geary's C :", round(geary_res$estimate[1], 4),
      "| p =", round(geary_res$p.value, 4), "\n")
  cat("Getis-Ord G :", round(getis_res$estimate[1], 4),
      "| p =", round(getis_res$p.value, 4), "\n")
  
  # -------------------- LISA (Local Moran’s I) --------------------
  lisa <- localmoran(jabar_merged[[v]], WL, zero.policy = TRUE)
  colnames(lisa) <- c("Ii", "E.Ii", "Var.Ii", "Z.Ii", "P.value")
  
  # Salin data agar tidak menimpa variabel lain
  temp_map <- jabar_merged
  temp_map$Ii <- lisa[, "Ii"]
  temp_map$P.value <- lisa[, "P.value"]
  temp_map$lag_var <- lag.listw(WL, jabar_merged[[v]])
  
  mean_var <- mean(jabar_merged[[v]], na.rm = TRUE)
  mean_lag <- mean(temp_map$lag_var, na.rm = TRUE)
  
  temp_map$cluster <- NA
  temp_map$cluster[jabar_merged[[v]] >= mean_var & temp_map$lag_var >= mean_lag] <- "High-High"
  temp_map$cluster[jabar_merged[[v]] <= mean_var & temp_map$lag_var <= mean_lag] <- "Low-Low"
  temp_map$cluster[jabar_merged[[v]] >= mean_var & temp_map$lag_var <= mean_lag] <- "High-Low"
  temp_map$cluster[jabar_merged[[v]] <= mean_var & temp_map$lag_var >= mean_lag] <- "Low-High"
  temp_map$cluster[temp_map$P.value > 0.05] <- "Non-signifikan"
  
  # -------------------- Plot LISA --------------------
  print(
    ggplot(temp_map) +
      geom_sf(aes(fill = cluster)) +
      scale_fill_manual(values = c(
        "High-High" = "red",
        "Low-Low" = "blue",
        "High-Low" = "orange",
        "Low-High" = "green",
        "Non-signifikan" = "grey80"
      )) +
      labs(
        title = paste("Peta Klaster LISA —", v),
        subtitle = "Autokorelasi Lokal (Local Moran’s I)",
        fill = "Tipe Klaster"
      ) +
      theme_minimal()
  )
}
## 
## =====================================
## 🔹 Variabel: PAD 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.5274 | p = 0 
## Geary's C : 0.6356 | p = 0.0207 
## Getis-Ord G : 0.0639 | p = 1e-04

## 
## =====================================
## 🔹 Variabel: DAU.Pendidikan 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : -0.1334 | p = 0.9699 
## Geary's C : 2.0165 | p = 0.9986 
## Getis-Ord G : 0.0643 | p = 0.0197

## 
## =====================================
## 🔹 Variabel: PDRB 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.211 | p = 0.0314 
## Geary's C : 0.6599 | p = 0.0344 
## Getis-Ord G : 0.0383 | p = 0.5122

## 
## =====================================
## 🔹 Variabel: Tingkat.Kemiskinan 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.4776 | p = 1e-04 
## Geary's C : 0.4102 | p = 1e-04 
## Getis-Ord G : 0.0417 | p = 0.0411

## 
## =====================================
## 🔹 Variabel: Rasio.Guru.dan.Murid.SD 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.4503 | p = 3e-04 
## Geary's C : 0.6854 | p = 0.0231 
## Getis-Ord G : 0.0401 | p = 0.058

## 
## =====================================
## 🔹 Variabel: Rasio.Guru.dan.Murid.SMP 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.6076 | p = 0 
## Geary's C : 0.4387 | p = 6e-04 
## Getis-Ord G : 0.0397 | p = 0.0313

## 
## =====================================
## 🔹 Variabel: Rasio.Guru.dan.Murid.SMA 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.0642 | p = 0.2316 
## Geary's C : 0.8453 | p = 0.1715 
## Getis-Ord G : 0.0393 | p = 0.0411

## 
## =====================================
## 🔹 Variabel: APM.SD 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : -0.0458 | p = 0.5206 
## Geary's C : 0.9954 | p = 0.4878 
## Getis-Ord G : 0.0385 | p = 0.5641

## 
## =====================================
## 🔹 Variabel: APM.SMP 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.2404 | p = 0.0238 
## Geary's C : 0.7428 | p = 0.053 
## Getis-Ord G : 0.0386 | p = 0.3562

## 
## =====================================
## 🔹 Variabel: APM.SMA 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.0449 | p = 0.2752 
## Geary's C : 0.9892 | p = 0.4739 
## Getis-Ord G : 0.0374 | p = 0.9873

## 
## =====================================
## 🔹 Variabel: APM.PT 
## =====================================
## Warning in globalG.test(jabar_merged[[v]], WL, zero.policy = TRUE): Binary
## weights recommended (especially for distance bands)
## Moran's I : 0.1261 | p = 0.1137 
## Geary's C : 0.7718 | p = 0.1002 
## Getis-Ord G : 0.0397 | p = 0.3042

# ============================================================
# RINGKASAN HASIL GLOBAL (opsional)
# ============================================================

summary_autokorelasi <- data.frame(
  Variabel = x_vars,
  Moran_I = sapply(hasil_moran, \(x) x$estimate[1]),
  Moran_p = sapply(hasil_moran, \(x) x$p.value),
  Geary_C = sapply(hasil_geary, \(x) x$estimate[1]),
  Geary_p = sapply(hasil_geary, \(x) x$p.value),
  Getis_G = sapply(hasil_getis, \(x) x$estimate[1]),
  Getis_p = sapply(hasil_getis, \(x) x$p.value)
)

print(summary_autokorelasi)
##                                                            Variabel     Moran_I
## PAD.Moran I statistic                                           PAD  0.52735753
## DAU.Pendidikan.Moran I statistic                     DAU.Pendidikan -0.13336132
## PDRB.Moran I statistic                                         PDRB  0.21102909
## Tingkat.Kemiskinan.Moran I statistic             Tingkat.Kemiskinan  0.47755328
## Rasio.Guru.dan.Murid.SD.Moran I statistic   Rasio.Guru.dan.Murid.SD  0.45029177
## Rasio.Guru.dan.Murid.SMP.Moran I statistic Rasio.Guru.dan.Murid.SMP  0.60763659
## Rasio.Guru.dan.Murid.SMA.Moran I statistic Rasio.Guru.dan.Murid.SMA  0.06415660
## APM.SD.Moran I statistic                                     APM.SD -0.04584671
## APM.SMP.Moran I statistic                                   APM.SMP  0.24036188
## APM.SMA.Moran I statistic                                   APM.SMA  0.04493035
## APM.PT.Moran I statistic                                     APM.PT  0.12614145
##                                                 Moran_p   Geary_C      Geary_p
## PAD.Moran I statistic                      1.637057e-05 0.6355874 2.074409e-02
## DAU.Pendidikan.Moran I statistic           9.698745e-01 2.0164783 9.985881e-01
## PDRB.Moran I statistic                     3.142485e-02 0.6599026 3.442808e-02
## Tingkat.Kemiskinan.Moran I statistic       1.293441e-04 0.4101916 8.646061e-05
## Rasio.Guru.dan.Murid.SD.Moran I statistic  2.656564e-04 0.6854435 2.311490e-02
## Rasio.Guru.dan.Murid.SMP.Moran I statistic 1.378178e-06 0.4387419 5.605401e-04
## Rasio.Guru.dan.Murid.SMA.Moran I statistic 2.316410e-01 0.8452953 1.715153e-01
## APM.SD.Moran I statistic                   5.206240e-01 0.9954343 4.878184e-01
## APM.SMP.Moran I statistic                  2.383792e-02 0.7427978 5.296689e-02
## APM.SMA.Moran I statistic                  2.751792e-01 0.9892363 4.738992e-01
## APM.PT.Moran I statistic                   1.137042e-01 0.7718023 1.001649e-01
##                                               Getis_G      Getis_p
## PAD.Moran I statistic                      0.06392921 7.645586e-05
## DAU.Pendidikan.Moran I statistic           0.06431647 1.973243e-02
## PDRB.Moran I statistic                     0.03834666 5.121883e-01
## Tingkat.Kemiskinan.Moran I statistic       0.04165883 4.108111e-02
## Rasio.Guru.dan.Murid.SD.Moran I statistic  0.04010078 5.803763e-02
## Rasio.Guru.dan.Murid.SMP.Moran I statistic 0.03968985 3.132632e-02
## Rasio.Guru.dan.Murid.SMA.Moran I statistic 0.03930289 4.107726e-02
## APM.SD.Moran I statistic                   0.03845357 5.640738e-01
## APM.SMP.Moran I statistic                  0.03855592 3.562484e-01
## APM.SMA.Moran I statistic                  0.03740831 9.872998e-01
## APM.PT.Moran I statistic                   0.03972497 3.041664e-01
# (Opsional) Simpan ke Excel
# openxlsx::write.xlsx(summary_autokorelasi, "hasil_autokorelasi_X.xlsx")


# ---------------------------------- MODEL OLS ---------------------------------
ols_model <- lm(`Rata.Rata.Lama.Sekolah` ~ 
                  PAD +
                  DAU.Pendidikan +
                  PDRB +
                  Tingkat.Kemiskinan +
                  Rasio.Guru.dan.Murid.SD +
                  Rasio.Guru.dan.Murid.SMP +
                  Rasio.Guru.dan.Murid.SMA +
                  APM.SD +
                  APM.SMP +
                  APM.SMA +
                  APM.PT,
                data = data
)
summary(ols_model)
## 
## Call:
## lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.20316 -0.37712 -0.00192  0.28643  1.37944 
## 
## Coefficients:
##                            Estimate Std. Error t value Pr(>|t|)  
## (Intercept)               2.710e+01  2.493e+01   1.087   0.2943  
## PAD                       7.856e-05  2.572e-04   0.305   0.7643  
## DAU.Pendidikan           -5.904e-04  5.621e-04  -1.050   0.3102  
## PDRB                      6.659e-07  7.917e-06   0.084   0.9341  
## Tingkat.Kemiskinan       -2.458e-01  1.307e-01  -1.882   0.0794 .
## Rasio.Guru.dan.Murid.SD   6.579e-02  7.169e-02   0.918   0.3733  
## Rasio.Guru.dan.Murid.SMP  6.594e-02  1.579e-01   0.418   0.6822  
## Rasio.Guru.dan.Murid.SMA -2.853e-01  1.426e-01  -2.001   0.0638 .
## APM.SD                   -1.893e-01  2.307e-01  -0.821   0.4248  
## APM.SMP                   1.608e-02  4.604e-02   0.349   0.7318  
## APM.SMA                   4.768e-02  4.407e-02   1.082   0.2964  
## APM.PT                    5.068e-02  3.644e-02   1.391   0.1846  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.7458 on 15 degrees of freedom
## Multiple R-squared:  0.8539, Adjusted R-squared:  0.7467 
## F-statistic: 7.969 on 11 and 15 DF,  p-value: 0.0001909
# Uji Multikolinearitas
library(car)
vif(ols_model)
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# Uji Normalitas Residual
shapiro.test(residuals(ols_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(ols_model)
## W = 0.98858, p-value = 0.9875
# Uji Homoskedastisitas
library(lmtest)
bptest(ols_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  ols_model
## BP = 13.367, df = 11, p-value = 0.27
# Uji Linearitas
library(lmtest)
resettest(ols_model)
## 
##  RESET test
## 
## data:  ols_model
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743
# Uji Autokorelasi Spasial Residual
jabar_merged$residual_ols <- residuals(ols_model)
moran_res <- moran.test(
  jabar_merged$residual_ols,
  WL,
  zero.policy = TRUE
)
moran_res
## 
##  Moran I test under randomisation
## 
## data:  jabar_merged$residual_ols  
## weights: WL    
## 
## Moran I statistic standard deviate = 1.9156, p-value = 0.02771
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##        0.22699884       -0.03846154        0.01920382
# ==================  MODEL DIAGNOSTIC  =======================
lm.RStests(ols_model, listw = WL, zero.policy = TRUE, test = "all")
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## RSerr = 2.2446, df = 1, p-value = 0.1341
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## RSlag = 0.8677, df = 1, p-value = 0.3516
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## adjRSerr = 6.0142, df = 1, p-value = 0.01419
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## adjRSlag = 4.6374, df = 1, p-value = 0.03128
## 
## 
##  Rao's score (a.k.a Lagrange multiplier) diagnostics for spatial
##  dependence
## 
## data:  
## model: lm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan +
## PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD +
## Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP
## + APM.SMA + APM.PT, data = data)
## test weights: WL
## 
## SARMA = 6.8819, df = 2, p-value = 0.03203
# =============================================================
# ========  MODEL SPASIAL EKONOMETRIK LANJUTAN  ===============
# =============================================================
library(TH.data)
library(spdep)
library(spatialreg)
library(lmtest)
library(car)

# Pastikan data & listw sudah benar
# Variabel dependen: Rata-Rata.Lama.Sekolah
# Variabel independen: sesuai model OLS sebelumnya

# =============================================================
# 1. SPATIAL DURBIN MODEL (SDM)
# =============================================================
sdm_model <- lagsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  Durbin = TRUE,
  method = "eigen"
)
## Warning in lagsarlm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + : inversion of asymptotic covariance matrix failed for tol.solve = 2.22044604925031e-16 
##   reciprocal condition number = 1.59551e-16 - using numerical Hessian.
summary(sdm_model)
## 
## Call:lagsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.4011178 -0.1511316 -0.0026241  0.0792597  0.7131894 
## 
## Type: mixed 
## Coefficients: (numerical Hessian approximate standard errors) 
##                                 Estimate  Std. Error z value  Pr(>|z|)
## (Intercept)                  -5.0623e+01  1.6621e+01 -3.0458  0.002320
## PAD                           1.3645e-04  1.5215e-04  0.8968  0.369824
## DAU.Pendidikan               -8.5671e-05  2.0903e-04 -0.4098  0.681923
## PDRB                          8.1394e-06  4.1145e-06  1.9782  0.047905
## Tingkat.Kemiskinan           -3.0738e-01  9.5765e-02 -3.2097  0.001329
## Rasio.Guru.dan.Murid.SD       1.2140e-01  3.1069e-02  3.9075 9.326e-05
## Rasio.Guru.dan.Murid.SMP     -1.1745e-01  6.1966e-02 -1.8955  0.058030
## Rasio.Guru.dan.Murid.SMA     -2.6239e-01  1.3255e-01 -1.9796  0.047749
## APM.SD                       -1.9172e-01  1.0007e-01 -1.9159  0.055378
## APM.SMP                      -5.5908e-02  3.1207e-02 -1.7915  0.073213
## APM.SMA                       9.3052e-02  2.8799e-02  3.2311  0.001233
## APM.PT                        2.1652e-02  2.4999e-02  0.8661  0.386437
## lag.PAD                      -9.2271e-05  3.1370e-04 -0.2941  0.768654
## lag.DAU.Pendidikan            2.8324e-04  5.7333e-04  0.4940  0.621292
## lag.PDRB                      4.9924e-05  1.1749e-05  4.2493 2.145e-05
## lag.Tingkat.Kemiskinan        1.1490e-01  1.6950e-01  0.6779  0.497852
## lag.Rasio.Guru.dan.Murid.SD   3.3055e-01  1.1748e-01  2.8137  0.004898
## lag.Rasio.Guru.dan.Murid.SMP -1.1126e+00  1.9529e-01 -5.6972 1.218e-08
## lag.Rasio.Guru.dan.Murid.SMA  1.1095e+00  2.0106e-01  5.5180 3.428e-08
## lag.APM.SD                    4.7641e-01  1.7402e-01  2.7376  0.006189
## lag.APM.SMP                   2.5514e-01  1.0510e-01  2.4276  0.015198
## lag.APM.SMA                   1.1211e-01  5.4907e-02  2.0418  0.041173
## lag.APM.PT                   -5.5763e-03  4.9677e-02 -0.1123  0.910625
## 
## Rho: -0.26404, LR test value: 0.62355, p-value: 0.42973
## Approximate (numerical Hessian) standard error: 0.28486
##     z-value: -0.92689, p-value: 0.35398
## Wald statistic: 0.85913, p-value: 0.35398
## 
## Log likelihood: -0.5617963 for mixed model
## ML residual variance (sigma squared): 0.06003, (sigma: 0.24501)
## Number of observations: 27 
## Number of parameters estimated: 25 
## AIC: 51.124, (AIC for lm: 49.747)
# ------------------ Uji Asumsi SDM ------------------
# 1. Multikolinearitas
vif(lm(`Rata.Rata.Lama.Sekolah` ~ 
         PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
         Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
         APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# 2. Normalitas residual
shapiro.test(residuals(sdm_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(sdm_model)
## W = 0.94664, p-value = 0.1775
# 3. Homoskedastisitas
bptest.Sarlm(sdm_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  
## BP = 19.673, df = 22, p-value = 0.6035
# 4. Linearitas (RESET test)
resettest(lm(`Rata.Rata.Lama.Sekolah` ~ 
               PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
               Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
               APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
## 
##  RESET test
## 
## data:  lm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +     Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +     APM.SD + APM.SMP + APM.SMA + APM.PT, data = data)
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743
# 5. Autokorelasi spasial residual
library(spdep)
moran.test(residuals(sdm_model), WL, zero.policy = TRUE)
## 
##  Moran I test under randomisation
## 
## data:  residuals(sdm_model)  
## weights: WL    
## 
## Moran I statistic standard deviate = -1.3734, p-value = 0.9152
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##       -0.22526307       -0.03846154        0.01850110
# =============================================================
# 2. SPATIAL DURBIN ERROR MODEL (SDEM)
# =============================================================
sdem_model <- errorsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  Durbin = TRUE,
  method = "eigen"
)
## Warning in errorsarlm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + : inversion of asymptotic covariance matrix failed for tol.solve = 2.22044604925031e-16 
##   reciprocal condition number = 2.51961e-18 - using numerical Hessian.
summary(sdem_model)
## 
## Call:errorsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##         Min          1Q      Median          3Q         Max 
## -0.16825813 -0.04242035 -0.00060182  0.04974527  0.15696417 
## 
## Type: error 
## Coefficients: (asymptotic standard errors) 
##                                 Estimate  Std. Error  z value  Pr(>|z|)
## (Intercept)                  -2.6839e+02  4.9746e+01  -5.3951 6.847e-08
## PAD                           2.7748e-05  9.7009e-05   0.2860 0.7748483
## DAU.Pendidikan               -7.9049e-04  1.9440e-04  -4.0664 4.775e-05
## PDRB                          1.7335e-05  1.8281e-06   9.4823 < 2.2e-16
## Tingkat.Kemiskinan           -2.7951e-02  5.0168e-02  -0.5572 0.5774218
## Rasio.Guru.dan.Murid.SD       7.5629e-02  2.0929e-02   3.6137 0.0003019
## Rasio.Guru.dan.Murid.SMP      6.0750e-02  4.3325e-02   1.4022 0.1608565
## Rasio.Guru.dan.Murid.SMA      2.0100e-01  7.8406e-02   2.5636 0.0103604
## APM.SD                       -4.2374e-01  7.4106e-02  -5.7181 1.077e-08
## APM.SMP                       3.9796e-02  1.8588e-02   2.1409 0.0322816
## APM.SMA                       1.8017e-01  2.2052e-02   8.1701 2.220e-16
## APM.PT                        5.8663e-02  1.4297e-02   4.1031 4.076e-05
## lag.PAD                       1.8569e-04  1.4902e-04   1.2461 0.2127439
## lag.DAU.Pendidikan            1.8795e-03  3.5650e-04   5.2720 1.350e-07
## lag.PDRB                      1.6472e-04  1.8195e-05   9.0532 < 2.2e-16
## lag.Tingkat.Kemiskinan        1.4713e+00  3.1569e-01   4.6606 3.154e-06
## lag.Rasio.Guru.dan.Murid.SD   4.5366e-01  5.8957e-02   7.6947 1.421e-14
## lag.Rasio.Guru.dan.Murid.SMP -2.6016e+00  2.3129e-01 -11.2483 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SMA  2.2328e+00  1.7796e-01  12.5466 < 2.2e-16
## lag.APM.SD                    2.4913e+00  5.0539e-01   4.9296 8.241e-07
## lag.APM.SMP                   5.2100e-02  6.7999e-02   0.7662 0.4435678
## lag.APM.SMA                   3.3836e-01  6.4771e-02   5.2240 1.751e-07
## lag.APM.PT                    1.1363e-01  5.8096e-02   1.9559 0.0504736
## 
## Lambda: -1.4052, LR test value: 43.389, p-value: 4.4866e-11
## Approximate (numerical Hessian) standard error: 0.018085
##     z-value: -77.701, p-value: < 2.22e-16
## Wald statistic: 6037.4, p-value: < 2.22e-16
## 
## Log likelihood: 20.82102 for error model
## ML residual variance (sigma squared): 0.0053965, (sigma: 0.073461)
## Number of observations: 27 
## Number of parameters estimated: 25 
## AIC: 8.358, (AIC for lm: 49.747)
# ------------------ Uji Asumsi SDEM ------------------
# Uji Multikolinearitas
vif(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
         Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
         APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# Uji Normalitas Residual
shapiro.test(residuals(sdem_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(sdem_model)
## W = 0.98749, p-value = 0.9801
# Uji Homoskedastisitas
bptest.Sarlm(sdem_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  
## BP = 25.015, df = 22, p-value = 0.2964
# Uji Linearitas
resettest(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
               Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
               APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
## 
##  RESET test
## 
## data:  lm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +     Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +     APM.SD + APM.SMP + APM.SMA + APM.PT, data = data)
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743
# Uji Autokorelasi Spasial Residual
moran.test(residuals(sdem_model), WL, zero.policy = TRUE)
## 
##  Moran I test under randomisation
## 
## data:  residuals(sdem_model)  
## weights: WL    
## 
## Moran I statistic standard deviate = -1.417, p-value = 0.9218
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##       -0.23587214       -0.03846154        0.01940978
# =============================================================
# 3. SPATIAL AUTOREGRESSIVE COMBINED (SAC)
# =============================================================
sac_model <- sacsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  method = "eigen"
)
summary(sac_model)
## 
## Call:sacsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, method = "eigen")
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.8938399 -0.3285814 -0.0095635  0.2515072  0.9919206 
## 
## Type: sac 
## Coefficients: (asymptotic standard errors) 
##                             Estimate  Std. Error z value  Pr(>|z|)
## (Intercept)               4.1564e+01  1.6708e+01  2.4876  0.012860
## PAD                       1.1423e-04  1.6438e-04  0.6949  0.487115
## DAU.Pendidikan           -5.4504e-04  3.1979e-04 -1.7044  0.088312
## PDRB                     -3.7658e-07  4.9163e-06 -0.0766  0.938944
## Tingkat.Kemiskinan       -2.6798e-01  9.4870e-02 -2.8247  0.004732
## Rasio.Guru.dan.Murid.SD   6.2205e-02  4.2011e-02  1.4807  0.138692
## Rasio.Guru.dan.Murid.SMP  1.0608e-01  9.2260e-02  1.1498  0.250213
## Rasio.Guru.dan.Murid.SMA -4.2389e-01  1.0425e-01 -4.0662 4.778e-05
## APM.SD                   -2.7545e-01  1.3715e-01 -2.0083  0.044609
## APM.SMP                  -8.1964e-03  3.0575e-02 -0.2681  0.788641
## APM.SMA                   4.2308e-02  2.4101e-02  1.7555  0.079178
## APM.PT                    4.8717e-02  2.5294e-02  1.9260  0.054101
## 
## Rho: -0.16136
## Asymptotic standard error: 0.14919
##     z-value: -1.0816, p-value: 0.27945
## Lambda: 0.64697
## Asymptotic standard error: 0.16724
##     z-value: 3.8685, p-value: 0.00010949
## 
## LR test value: 7.7349, p-value: 0.020912
## 
## Log likelihood: -18.58993 for sac model
## ML residual variance (sigma squared): 0.20242, (sigma: 0.44991)
## Number of observations: 27 
## Number of parameters estimated: 15 
## AIC: 67.18, (AIC for lm: 70.915)
# ------------------ Uji Asumsi SAC ------------------
# Uji Multikolinearitas
vif(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
         Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
         APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# Uji Normalitas Residual
shapiro.test(residuals(sac_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(sac_model)
## W = 0.98036, p-value = 0.8704
# Uji Homoskedastisitas
bptest.Sarlm(sac_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  
## BP = 17.171, df = 11, p-value = 0.1029
# Uji Linearitas
resettest(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
               Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
               APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
## 
##  RESET test
## 
## data:  lm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +     Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +     APM.SD + APM.SMP + APM.SMA + APM.PT, data = data)
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743
# Uji Autokorelasi Spasial Residual
moran.test(residuals(sac_model), WL, zero.policy = TRUE)
## 
##  Moran I test under randomisation
## 
## data:  residuals(sac_model)  
## weights: WL    
## 
## Moran I statistic standard deviate = 1.0031, p-value = 0.1579
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##        0.10167520       -0.03846154        0.01951864
# =============================================================
# 4. GENERAL NESTED SPATIAL MODEL (GNS)
# =============================================================
gns_model <- sacsarlm(
  `Rata.Rata.Lama.Sekolah` ~ 
    PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
    Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
    APM.SD + APM.SMP + APM.SMA + APM.PT,
  data = data,
  listw = WL,
  Durbin = TRUE,
  method = "eigen"
)
## Warning in sacsarlm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + : inversion of asymptotic covariance matrix failed for tol.solve = 2.22044604925031e-16 
##   reciprocal condition number = 1.99751e-18 - using numerical Hessian.
summary(gns_model)
## 
## Call:sacsarlm(formula = Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + 
##     PDRB + Tingkat.Kemiskinan + Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + 
##     Rasio.Guru.dan.Murid.SMA + APM.SD + APM.SMP + APM.SMA + APM.PT, 
##     data = data, listw = WL, Durbin = TRUE, method = "eigen")
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -0.0966083 -0.0314664  0.0022841  0.0342568  0.1050062 
## 
## Type: sacmixed 
## Coefficients: (numerical Hessian approximate standard errors) 
##                                 Estimate  Std. Error    z value  Pr(>|z|)
## (Intercept)                  -1.3719e+02  4.8991e-02 -2800.2116 < 2.2e-16
## PAD                           3.4918e-04  3.5563e-05     9.8187 < 2.2e-16
## DAU.Pendidikan               -4.7594e-04  8.9923e-05    -5.2927 1.205e-07
## PDRB                          1.6765e-05  1.0696e-06    15.6738 < 2.2e-16
## Tingkat.Kemiskinan            7.0589e-02  2.2252e-02     3.1723  0.001513
## Rasio.Guru.dan.Murid.SD       1.0076e-01  1.7351e-02     5.8074 6.343e-09
## Rasio.Guru.dan.Murid.SMP     -1.0102e-02  4.7117e-02    -0.2144  0.830239
## Rasio.Guru.dan.Murid.SMA      2.4296e-01  2.1369e-02    11.3700 < 2.2e-16
## APM.SD                       -2.4064e-01  2.5692e-03   -93.6664 < 2.2e-16
## APM.SMP                       3.8266e-02  7.2847e-03     5.2529 1.497e-07
## APM.SMA                       2.0126e-01  5.7355e-03    35.0896 < 2.2e-16
## APM.PT                        8.7791e-02  7.0271e-03    12.4931 < 2.2e-16
## lag.PAD                      -2.1145e-04  6.6160e-05    -3.1960  0.001393
## lag.DAU.Pendidikan            1.8509e-03  1.8405e-04    10.0568 < 2.2e-16
## lag.PDRB                      1.3878e-04  2.0240e-06    68.5667 < 2.2e-16
## lag.Tingkat.Kemiskinan        7.0987e-01  4.2822e-02    16.5773 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SD   6.5607e-02  3.5044e-02     1.8722  0.061185
## lag.Rasio.Guru.dan.Murid.SMP -1.8675e+00  9.5055e-03  -196.4654 < 2.2e-16
## lag.Rasio.Guru.dan.Murid.SMA  1.9128e+00  8.3118e-03   230.1293 < 2.2e-16
## lag.APM.SD                    1.1391e+00  6.0451e-04  1884.2770 < 2.2e-16
## lag.APM.SMP                   5.5462e-02  2.5258e-02     2.1958  0.028106
## lag.APM.SMA                   1.0648e-01  1.0516e-02    10.1261 < 2.2e-16
## lag.APM.PT                   -1.0949e-01  1.0979e-02    -9.9732 < 2.2e-16
## 
## Rho: 0.82504
## Approximate (numerical Hessian) standard error: 0.12603
##     z-value: 6.5465, p-value: 5.8884e-11
## Lambda: -1.4199
## Approximate (numerical Hessian) standard error: 0.0098645
##     z-value: -143.94, p-value: < 2.22e-16
## 
## LR test value: 100.87, p-value: 1.1102e-15
## 
## Log likelihood: 27.97863 for sacmixed model
## ML residual variance (sigma squared): 0.0022456, (sigma: 0.047388)
## Number of observations: 27 
## Number of parameters estimated: 26 
## AIC: -3.9573, (AIC for lm: 70.915)
# ------------------ Uji Asumsi GNS ------------------
# Uji Multikolinearitas
vif(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
         Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
         APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
##                      PAD           DAU.Pendidikan                     PDRB 
##                 3.569644                 3.106706                 3.241988 
##       Tingkat.Kemiskinan  Rasio.Guru.dan.Murid.SD Rasio.Guru.dan.Murid.SMP 
##                 5.597198                 3.569846                 6.160609 
## Rasio.Guru.dan.Murid.SMA                   APM.SD                  APM.SMP 
##                 2.799998                 2.143041                 1.692572 
##                  APM.SMA                   APM.PT 
##                 2.852115                 3.688319
# Uji Normalitas Residual
shapiro.test(residuals(gns_model))
## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(gns_model)
## W = 0.98729, p-value = 0.9784
# Uji Homoskedastisitas
bptest.Sarlm(gns_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  
## BP = 26.263, df = 22, p-value = 0.2406
# Uji Linearitas
resettest(lm(`Rata.Rata.Lama.Sekolah` ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +
               Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +
               APM.SD + APM.SMP + APM.SMA + APM.PT, data = data))
## 
##  RESET test
## 
## data:  lm(Rata.Rata.Lama.Sekolah ~ PAD + DAU.Pendidikan + PDRB + Tingkat.Kemiskinan +     Rasio.Guru.dan.Murid.SD + Rasio.Guru.dan.Murid.SMP + Rasio.Guru.dan.Murid.SMA +     APM.SD + APM.SMP + APM.SMA + APM.PT, data = data)
## RESET = 1.0609, df1 = 2, df2 = 13, p-value = 0.3743
# Uji Autokorelasi Spasial Residual
moran.test(residuals(gns_model), WL, zero.policy = TRUE)
## 
##  Moran I test under randomisation
## 
## data:  residuals(gns_model)  
## weights: WL    
## 
## Moran I statistic standard deviate = -2.0057, p-value = 0.9776
## alternative hypothesis: greater
## sample estimates:
## Moran I statistic       Expectation          Variance 
##       -0.31973288       -0.03846154        0.01966584

Data

Kabupaten/Kota Rata-Rata Lama Sekolah PAD DAU Pendidikan PDRB Tingkat Kemiskinan Jumlah Guru SD Jumlah Murid SD Rasio Guru dan Murid SD Jumlah Sekolah SD Jumlah Guru SMP Jumlah Murid SMP Rasio Guru dan Murid SMP Jumlah Sekolah SMP Jumlah Guru SMA Jumlah Murid SMA Rasio Guru dan Murid SMA Jumlah Sekolah SMA APM SD APM SMP APM SMA APM PT
Bogor 8.39 3860.4 2454.62 54857 7.05 20555 552128 26.8610 1900 10256 236266 23.0369 768 4536 91985 20.2789 227 97.48 85.01 52.05 20.62
Sukabumi 7.34 698.62 296.85 31167 6.87 9352 240463 25.7125 1214 4393 86163 19.6137 384 1982 41648 21.0131 97 99.99 82.66 59.45 12.76
Cianjur 7.33 1090.76 313.59 24914 10.14 12108 259469 21.4296 1244 5109 99012 19.3799 444 1726 33341 19.3169 105 99.84 79.10 57.37 7.75
Bandung 9.15 1408.61 299.85 44126 6.19 15526 359821 23.1754 1366 7055 140208 19.8736 360 3045 64394 21.1475 120 99.74 85.75 53.50 19.64
Garut 7.85 519.63 252.25 29012 9.68 11664 269648 23.1180 1538 5617 106462 18.9535 418 2803 53126 18.9533 137 98.40 81.14 59.44 10.63
Tasikmalaya 7.97 394.69 112.41 25916 10.23 8307 151747 18.2674 1060 3952 64337 16.2796 308 1627 29134 17.9066 76 98.64 88.60 64.92 14.79
Ciamis 8.10 264.59 80.24 34336 7.39 6748 84605 12.5378 741 2422 38667 15.9649 135 1066 18508 17.3621 36 98.55 89.67 60.17 28.49
Kuningan 7.90 438.99 46.44 29273 11.88 6626 97391 14.6983 658 2582 41930 16.2393 120 1155 20965 18.1515 32 98.52 81.30 65.55 13.92
Cirebon 7.65 933.84 236.01 28140 11.00 9913 201901 20.3673 825 4703 82671 17.5784 221 1550 27852 17.9690 53 97.75 83.77 62.69 11.92
Majalengka 7.53 588.77 133.38 34234 10.82 6817 113468 16.6449 671 2383 41196 17.2875 125 1008 20778 20.6131 25 97.36 76.91 63.73 13.29
Sumedang 8.74 611.21 88.15 39699 9.10 6608 101571 15.3709 610 2568 43339 16.8766 130 1077 19850 18.4308 29 97.78 80.71 66.85 20.03
Indramayu 6.95 617.43 229.42 55166 11.93 7308 167370 22.9023 862 3496 63790 18.2466 216 1244 22842 18.3617 53 99.82 75.95 62.27 7.81
Subang 7.46 621.54 210.92 33037 9.49 8433 142296 16.8737 864 3524 62437 17.7177 179 1407 27442 19.5039 51 98.12 84.76 63.96 11.59
Purwakarta 8.14 761.97 68.40 84024 8.41 4411 102409 23.2167 421 2034 40711 20.0152 124 802 18207 22.7020 30 98.46 87.09 50.85 14.63
Karawang 8.05 1720.96 172.72 121298 7.86 10692 246086 23.0159 959 3819 92066 24.1074 210 1673 34154 20.4148 54 99.71 80.70 59.04 13.92
Bekasi 9.76 3132.33 182.21 128693 4.80 14978 353961 23.6321 1073 6632 133066 20.0642 421 3136 61600 19.6429 127 97.43 85.88 59.15 20.63
Bandung Barat 8.24 774.63 145.36 32500 10.49 7292 160173 21.9656 702 3364 65266 19.4013 203 1638 29860 18.2295 67 98.61 91.39 61.71 10.82
Pangandaran 8.10 240.47 35.62 35647 8.75 2464 30652 12.4399 287 941 13279 14.1116 55 287 5021 17.4948 8 97.57 85.47 61.39 9.76
Kota Bogor 10.71 1437.50 31.73 56616 6.53 4951 100094 20.2169 281 2214 43326 19.5691 128 1328 22091 16.6348 55 98.48 88.43 61.36 20.46
Kota Sukabumi 10.38 416.86 43.13 44760 7.20 1785 33281 18.6448 126 857 16102 18.7888 48 525 8299 15.8076 20 99.82 85.38 70.62 23.31
Kota Bandung 11.07 3448.89 66.57 147081 3.87 9664 201344 20.8344 484 5255 99720 18.9762 270 3850 64061 16.6392 146 97.84 90.00 63.47 29.99
Kota Cirebon 10.53 649.41 25.75 88560 9.02 2075 33636 16.2101 164 1161 18175 15.6546 53 800 12986 16.2325 28 97.75 83.50 62.07 17.90
Kota Bekasi 11.79 3350.23 56.07 48922 4.01 12109 226570 18.7109 629 5202 97249 18.6945 305 2796 50224 17.9628 115 99.68 90.33 72.74 24.65
Kota Depok 11.59 1762.30 41.04 43515 2.34 8122 159417 19.6278 427 4230 76185 18.0106 263 1659 33060 19.9277 79 97.35 81.18 71.01 40.06
Kota Cimahi 11.52 405.65 22.67 72528 4.39 2051 46638 22.7392 118 1080 22328 20.6741 48 589 11013 18.6978 17 99.31 86.43 70.30 27.29
Kota Tasikmalaya 9.63 353.67 30.94 39445 11.10 3046 62639 20.5643 226 1748 28994 16.5870 87 1050 16665 15.8714 29 97.22 87.22 65.23 19.19
Kota Banjar 8.83 156.62 14.23 26451 5.85 963 14179 14.7238 88 542 7819 14.4262 28 199 3654 18.3618 4 99.04 89.54 70.52 10.52