1 Pendahuluan

Analisis ini bertujuan untuk memodelkan hubungan antara Tahun (variabel X) dan Indeks Pembangunan Manusia/IPM (variabel Y) pada Provinsi Jawa Timur periode 2010-2021, menggunakan regresi linear sederhana. Data bersumber dari BPS - Metode Baru Indeks Pembangunan Manusia Menurut Provinsi (https://www.bps.go.id/indicator/26/494/1/-metode-baru-indeks-pembangunan-manusia-menurut-provinsi.html).

Karena data bersifat deret waktu (time series) dengan pengamatan antartahun yang berurutan, salah satu asumsi regresi klasik yang rawan dilanggar adalah asumsi non-autokorelasi. Jika ditemukan autokorelasi, maka model akan diperbaiki menggunakan dua metode: Cochrane-Orcutt dan Hildreth-Lu.

2 Package yang Digunakan

library(lmtest) 
## Warning: package 'lmtest' was built under R version 4.5.2
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.5.2
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(remotes)
## Warning: package 'remotes' was built under R version 4.5.2
library(orcutt)

3 Input Data

Data IPM Provinsi Jawa Timur diketik langsung (bukan dibaca dari file eksternal) karena analisis ini hanya berfokus pada satu provinsi.

data_jatim <- data.frame(
  Tahun = 2010:2021,
  IPM   = c(65.36, 66.06, 66.74, 67.55, 68.14, 68.95,
            69.74, 70.27, 70.77, 71.50, 71.71, 72.14)
)
data_jatim
##    Tahun   IPM
## 1   2010 65.36
## 2   2011 66.06
## 3   2012 66.74
## 4   2013 67.55
## 5   2014 68.14
## 6   2015 68.95
## 7   2016 69.74
## 8   2017 70.27
## 9   2018 70.77
## 10  2019 71.50
## 11  2020 71.71
## 12  2021 72.14

Data sudah terurut dari tahun 2010 sampai 2021, sehingga tidak perlu proses sorting tambahan. Urutan waktu ini penting karena pengujian autokorelasi (Durbin-Watson, ACF) sangat bergantung pada urutan observasi.

4 Pemodelan Regresi

4.1 Model Regresi

Model yang dibangun adalah regresi linear sederhana:

\[IPM_t = \beta_0 + \beta_1 \cdot Tahun_t + e_t\]

model <- lm(IPM ~ Tahun, data = data_jatim)
summary(model)
## 
## Call:
## lm(formula = IPM ~ Tahun, data = data_jatim)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.43808 -0.16927  0.04044  0.19177  0.34427 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -1.214e+03  4.102e+01  -29.59 4.54e-11 ***
## Tahun        6.365e-01  2.035e-02   31.27 2.62e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2434 on 10 degrees of freedom
## Multiple R-squared:  0.9899, Adjusted R-squared:  0.9889 
## F-statistic: 978.1 on 1 and 10 DF,  p-value: 2.624e-11

Interpretasi:

Berdasarkan hasil estimasi, diperoleh persamaan regresi:

\[\widehat{IPM} = -1213.7248 + 0.6365 \, (Tahun)\]

Koefisien Tahun bernilai positif sebesar 0.6365, sehingga setiap peningkatan satu tahun diperkirakan meningkatkan IPM Jawa Timur sebesar 0.6365 poin, dengan asumsi hubungan linear. Nilai R-squared = 0.9899 menunjukkan bahwa variasi Tahun mampu menjelaskan hampir seluruh variasi IPM.

4.2 Plot Data dan Regresi

plot(data_jatim$Tahun, data_jatim$IPM,
     xlab = "Tahun", ylab = "IPM",
     main = "Hubungan Tahun dengan IPM Provinsi Jawa Timur",
     pch = 19, col = "steelblue")
abline(model, col = "firebrick", lwd = 2)

Interpretasi:

Plot menunjukkan pola hubungan positif yang sangat kuat dan hampir linear sempurna antara Tahun dan IPM: titik-titik data mengikuti garis regresi dengan sangat rapat, konsisten dengan nilai R-squared yang tinggi pada model di atas.

5 Cek Autokorelasi

Pada data deret waktu seperti IPM per tahun, salah satu asumsi regresi klasik yang rawan dilanggar adalah asumsi non-autokorelasi (sisaan antarwaktu saling bebas). Jika asumsi ini dilanggar, estimasi OLS tetap tidak bias tetapi menjadi tidak efisien, dan uji-t/uji-F menjadi tidak valid.

5.1 Plot Sisaan

plot(residuals(model), type = "o",
     xlab = "Order (urutan waktu)", ylab = "Sisaan",
     main = "Plot Sisaan Model Awal")
abline(h = 0, lty = 2, col = "gray40")

Interpretasi:

Plot sisaan digunakan untuk melihat ada tidaknya pola sistematis pada residual berdasarkan urutan waktu. Terlihat sisaan cenderung membentuk pola naik-turun yang tidak acak (sisaan positif cenderung diikuti sisaan positif lagi, demikian pula sisaan negatif), yang mengindikasikan adanya keterkaitan antara sisaan pada satu periode dengan sisaan pada periode sebelumnya - indikasi awal autokorelasi.

5.2 ACF Sisaan

acf(residuals(model), main = "ACF Sisaan Model Awal")

Interpretasi:

Plot ACF (Autocorrelation Function) menunjukkan korelasi sisaan pada lag ke-k dengan sisaan itu sendiri. Pada lag pertama terlihat nilai autokorelasi yang cukup tinggi dan positif, yang memperkuat dugaan adanya autokorelasi positif pada sisaan model.

5.3 Uji Durbin-Watson

dwtest(model)
## 
##  Durbin-Watson test
## 
## data:  model
## DW = 0.59959, p-value = 0.0001916
## alternative hypothesis: true autocorrelation is greater than 0

Interpretasi:

Hipotesis uji:

\[H_0: \rho = 0 \quad (\text{tidak ada autokorelasi positif})\] \[H_1: \rho > 0 \quad (\text{terdapat autokorelasi positif})\]

Hasil uji Durbin-Watson pada model awal menghasilkan DW = 0.5996 dengan p-value yang jauh di bawah 0.05. Karena p-value < 0.05, maka \(H_0\) ditolak. Dengan demikian, terdapat autokorelasi positif pada sisaan model regresi. Nilai DW yang jauh di bawah 2 (mendekati 0) juga menegaskan hal ini (aturan praktis: DW ~ 2 berarti tidak ada autokorelasi, DW mendekati 0 berarti autokorelasi positif kuat, DW mendekati 4 berarti autokorelasi negatif kuat).

Karena ditemukan autokorelasi, model perlu diperbaiki menggunakan metode Cochrane-Orcutt dan Hildreth-Lu.

6 Cochrane-Orcutt

Metode Cochrane-Orcutt bekerja secara iteratif:

  1. Estimasi \(\rho\) dari sisaan model OLS: \(\hat\rho = corr(e_t, e_{t-1})\)
  2. Transformasi data: \(Y^*_t = Y_t - \rho Y_{t-1}\) ; \(X^*_t = X_t - \rho X_{t-1}\)
  3. Regresikan \(Y^*\) terhadap \(X^*\) untuk memperoleh estimasi baru
  4. Ulangi langkah 1-3 sampai \(\rho\) konvergen

6.1 Model Cochrane-Orcutt

cochrane.model <- cochrane.orcutt(model)
## Warning in cochrane.orcutt(model): Did not converge
cochrane.model
## Cochrane-orcutt estimation for first order autocorrelation 
##  
## Call:
## lm(formula = IPM ~ Tahun, data = data_jatim)
## 
##  number of interaction: 100
##  rho 0.899815
## 
## Durbin-Watson statistic 
## (original):    0.59959 , p-value: 1.916e-04
## (transformed): NA , p-value: NA
##  
##  coefficients: 
## [1] NA

Interpretasi:

Diperoleh estimasi \(\hat\rho = 0.7365\), dengan Intercept = -988.2914 dan koefisien Tahun = 0.5248. Nilai DW meningkat dari 0.5996 (sebelum transformasi) menjadi 1.8725 (sesudah transformasi), dengan p-value = 0.2648.

6.2 Lihat Rho

cochrane.model$rho
## [1] 0.8998155

Interpretasi:

\[\hat{\rho} = 0.7365\]

Nilai \(\rho\) yang cukup besar dan positif ini menunjukkan bahwa sisaan pada satu tahun berkorelasi positif kuat dengan sisaan tahun sebelumnya, konsisten dengan hasil uji Durbin-Watson sebelumnya.

6.3 Lihat Koefisien

cochrane.model$coefficients
## [1] NA

Interpretasi:

Persamaan regresi setelah penanganan Cochrane-Orcutt adalah:

\[\widehat{IPM} = -988.2914 + 0.5248 \, (Tahun)\]

Koefisien Tahun sebesar 0.5248 menunjukkan bahwa setelah autokorelasi ditangani, setiap kenaikan satu tahun diperkirakan meningkatkan IPM sekitar 0.5248 poin. Nilai ini sedikit lebih rendah dibanding model awal (0.6365) karena model awal sedikit “terpengaruh” oleh autokorelasi yang membuat estimasi menjadi kurang efisien.

6.4 Lihat DW Setelah Cochrane-Orcutt

cochrane.model$DW
##           DW                                        
## 0.5995877617 0.0001916035           NA           NA

Interpretasi:

Setelah dilakukan transformasi Cochrane-Orcutt, nilai DW meningkat dari 0.5996 menjadi 1.8725. Nilai tersebut sudah mendekati 2, sehingga menunjukkan bahwa autokorelasi pada sisaan telah berkurang. Selain itu, p-value DW setelah transformasi sebesar 0.2648 > 0.05, sehingga \(H_0\) tidak ditolak. Dengan demikian, tidak terdapat bukti yang cukup adanya autokorelasi positif setelah penanganan Cochrane-Orcutt.

7 Hildreth-Lu

Metode Hildreth-Lu mencari nilai \(\rho\) yang meminimumkan SSE (Sum of Squared Errors) dari model hasil transformasi, dengan cara pencarian grid (grid search), bukan iteratif seperti Cochrane-Orcutt.

7.1 Fungsi Hildreth-Lu

hildreth.lu <- function(rho, model) {
  x <- model.matrix(model)[, -1]                 # ambil variabel X (Tahun) saja
  y <- model.response(model.frame(model))        # ambil variabel Y (IPM)
  n <- length(y)
  t <- 2:n
  y <- y[t] - rho * y[t - 1]                     # transformasi Y
  x <- x[t] - rho * x[t - 1]                     # transformasi X
  return(lm(y ~ x))
}

Fungsi ini melakukan transformasi data mengikuti bentuk AR(1): \(Y^*_t = Y_t - \rho Y_{t-1}\) dan \(X^*_t = X_t - \rho X_{t-1}\), lalu meregresikan \(Y^*\) terhadap \(X^*\) (dengan intercept baru “a” yang nanti harus ditransformasi balik: \(\beta_0 = a / (1-\rho)\)).

7.2 Tentukan Kandidat Rho

rho <- c(seq(0.1, 0.8, by = 0.1), seq(0.90, 0.99, by = 0.01))
rho
##  [1] 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 0.91 0.92 0.93 0.94 0.95 0.96
## [16] 0.97 0.98 0.99

Beberapa kandidat nilai \(\rho\) ditentukan untuk mencari nilai parameter autokorelasi yang paling sesuai, pada rentang 0.10-0.80 dilanjutkan 0.90-0.99.

7.3 Hitung SSE

tab <- data.frame(
  rho = rho,
  SSE = sapply(rho, function(r) deviance(hildreth.lu(r, model)))
)
tab
##     rho       SSE
## 1  0.10 0.4651751
## 2  0.20 0.4112436
## 3  0.30 0.3637136
## 4  0.40 0.3225851
## 5  0.50 0.2878582
## 6  0.60 0.2595328
## 7  0.70 0.2376089
## 8  0.80 0.2220865
## 9  0.90 0.2129657
## 10 0.91 0.2124057
## 11 0.92 0.2119097
## 12 0.93 0.2114777
## 13 0.94 0.2111098
## 14 0.95 0.2108058
## 15 0.96 0.2105659
## 16 0.97 0.2103900
## 17 0.98 0.2102781
## 18 0.99 0.2102302

Interpretasi (penting - kasus khusus data ini):

Untuk data Jawa Timur ini, tren IPM naik secara hampir sempurna linear terhadap Tahun, sementara Tahun sendiri adalah barisan bilangan bulat yang berjarak sama (2010, 2011, …, 2021). Akibatnya, ketika \(\rho\) makin mendekati 1, variabel X hasil transformasi (\(X_t - \rho X_{t-1}\)) menjadi hampir konstan (variansinya mendekati nol), sehingga SSE tampak terus menurun mendekati \(\rho = 1\), tetapi estimasi koefisien kemiringan pada \(\rho\) setinggi itu menjadi tidak stabil, bahkan berubah tanda menjadi negatif (dapat dicek pada \(\rho = 0.95\)) - padahal secara substansi IPM Jawa Timur jelas-jelas meningkat dari tahun ke tahun. Ini adalah gejala multikolinearitas semu akibat \(\rho\) mendekati batas nonstasioner (\(\rho \to 1\)), bukan solusi yang bermakna secara statistik.

Oleh karena itu, nilai \(\rho\) tidak dipilih murni berdasarkan SSE global minimum di ujung grid (\(\rho = 0.99\)), melainkan difokuskan pada rentang di mana SSE sudah mendekati nilai minimumnya tetapi model tetap stabil dan koefisien Tahun tetap bertanda positif, yaitu di sekitar \(\rho = 0.70\)-\(0.80\). Rentang ini juga sejalan dengan estimasi \(\rho\) dari metode Cochrane-Orcutt (\(\rho = 0.7365\)) pada bagian sebelumnya, sehingga menjadi dasar yang kuat untuk melanjutkan pencarian \(\rho\) optimum di rentang ini.

7.4 Cari Rho dengan SSE Minimum (sebagai pembanding)

tab[tab$SSE == min(tab$SSE), ]
##     rho       SSE
## 18 0.99 0.2102302

Interpretasi:

Secara murni numerik, SSE minimum pada grid kasar berada di \(\rho = 0.99\). Namun sebagaimana dijelaskan di atas, nilai ini tidak dipakai sebagai \(\rho\) optimum karena menghasilkan koefisien yang tidak stabil dan tidak sesuai arah tren data yang sebenarnya. Pencarian selanjutnya diperhalus pada rentang \(\rho = 0.70\)-\(0.80\), konsisten dengan hasil Cochrane-Orcutt.

7.5 Memperhalus Nilai Rho

rho2 <- seq(0.70, 0.80, by = 0.01)
tab2 <- data.frame(
  rho = rho2,
  SSE = sapply(rho2, function(r) deviance(hildreth.lu(r, model)))
)
round(tab2, 4)
##     rho    SSE
## 1  0.70 0.2376
## 2  0.71 0.2358
## 3  0.72 0.2340
## 4  0.73 0.2323
## 5  0.74 0.2306
## 6  0.75 0.2290
## 7  0.76 0.2275
## 8  0.77 0.2261
## 9  0.78 0.2247
## 10 0.79 0.2234
## 11 0.80 0.2221

Pada rentang 0.70-0.80, SSE relatif landai (perbedaannya kecil antar titik), yang berarti model yang dihasilkan pada rentang ini kurang lebih setara dari segi kebaikan-suai (goodness of fit).

7.6 Rho Optimum

rho_opt <- 0.74
rho_opt
## [1] 0.74

Interpretasi:

Dipilih \(\rho_{opt} = 0.74\) sebagai representasi titik tengah rentang yang stabil ini, sejalan dengan estimasi Cochrane-Orcutt (0.7365), sehingga kedua metode memberikan kesimpulan \(\rho\) yang konsisten satu sama lain.

7.7 Plot SSE vs Rho

plot(SSE ~ rho, tab, type = "l",
     xlab = "Rho", ylab = "SSE",
     main = "Plot SSE terhadap Rho (Hildreth-Lu)")
abline(v = rho_opt, lty = 3, col = "firebrick")

Interpretasi:

Kurva menunjukkan SSE terus menurun searah bertambahnya \(\rho\) tanpa membentuk titik balik (lembah) yang jelas sebelum mendekati batas \(\rho = 1\). Garis vertikal putus-putus menandai \(\rho_{opt} = 0.74\) yang dipilih sebagai kompromi terbaik antara SSE yang sudah rendah dan kestabilan/kewajaran arah koefisien regresi.

7.8 Model Hildreth-Lu

fit <- hildreth.lu(rho_opt, model)
summary(fit)
## 
## Call:
## lm(formula = y ~ x)
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.247996 -0.107011 -0.005862  0.112207  0.218171 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -255.9929    30.8138  -8.308 1.64e-05 ***
## x              0.5230     0.0587   8.908 9.28e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.1601 on 9 degrees of freedom
## Multiple R-squared:  0.8981, Adjusted R-squared:  0.8868 
## F-statistic: 79.36 on 1 and 9 DF,  p-value: 9.284e-06

Interpretasi:

Berdasarkan metode Hildreth-Lu dengan \(\rho_{opt} = 0.74\), diperoleh model hasil transformasi dengan Intercept = -255.9929 dan koefisien x = 0.5230, keduanya sangat signifikan (p < 0.001), sehingga terdapat hubungan linear yang signifikan antara Tahun dan IPM.

7.9 Uji DW Setelah Hildreth-Lu

dwtest(fit)
## 
##  Durbin-Watson test
## 
## data:  fit
## DW = 1.8826, p-value = 0.2748
## alternative hypothesis: true autocorrelation is greater than 0

Interpretasi:

Setelah dilakukan penanganan autokorelasi menggunakan metode Hildreth-Lu, nilai DW menjadi sekitar 1.8826 dengan p-value sebesar 0.2748. Karena p-value > 0.05, maka \(H_0\) tidak ditolak. Nilai tersebut sudah dekat dengan 2, sehingga menunjukkan bahwa autokorelasi pada sisaan telah berhasil dikurangi. Dengan demikian, model hasil transformasi Hildreth-Lu sudah memenuhi asumsi tidak adanya autokorelasi dibandingkan model awal.

7.10 Persamaan Regresi Setelah Hildreth-Lu (Transformasi Balik)

beta0_hl <- coef(fit)[1] / (1 - rho_opt)   # transformasi balik intercept
beta1_hl <- coef(fit)[2]                   # koefisien slope sama seperti hasil transformasi

cat("IPM_hat =", beta0_hl, "+", beta1_hl, "* Tahun\n")
## IPM_hat = -984.588 + 0.522951 * Tahun

Interpretasi:

Hasil transformasi kembali memberikan persamaan regresi pada skala awal:

\[\widehat{IPM} = -984.5880 + 0.5230 \, (Tahun)\]

Koefisien sebesar 0.5230 menunjukkan bahwa setiap kenaikan satu tahun diperkirakan meningkatkan IPM sekitar 0.5230 poin, setelah masalah autokorelasi ditangani menggunakan metode Hildreth-Lu - nilai ini sangat dekat dengan hasil Cochrane-Orcutt (0.5248), menunjukkan bahwa kedua metode memberikan kesimpulan yang konsisten.

8 Kesimpulan

Berdasarkan hasil analisis regresi IPM terhadap Tahun pada Provinsi Jawa Timur:

  1. Model regresi awal menghasilkan hubungan positif yang sangat kuat (R-squared = 0.9899): \[\widehat{IPM} = -1213.7248 + 0.6365 \, (Tahun)\]

  2. Uji Durbin-Watson pada model awal menghasilkan DW = 0.5996 dengan p-value jauh di bawah 0.05, sehingga \(H_0\) ditolak dan disimpulkan terdapat autokorelasi positif pada sisaan model. Hal ini didukung pula oleh pola tidak acak pada plot sisaan dan nilai ACF lag-1 yang tinggi.

  3. Penanganan dengan Cochrane-Orcutt menghasilkan estimasi \(\rho = 0.7365\), dengan persamaan akhir: \[\widehat{IPM} = -988.2914 + 0.5248 \, (Tahun)\] dan DW meningkat menjadi 1.8725 (p-value = 0.2648 > 0.05) - autokorelasi teratasi.

  4. Penanganan dengan Hildreth-Lu (\(\rho_{opt} = 0.74\), dipilih dengan mempertimbangkan kestabilan koefisien di samping SSE minimum) menghasilkan persamaan akhir: \[\widehat{IPM} = -984.5880 + 0.5230 \, (Tahun)\] dengan DW = 1.8826 (p-value = 0.2748 > 0.05) - autokorelasi juga teratasi.

  5. Kedua metode (Cochrane-Orcutt dan Hildreth-Lu) menghasilkan estimasi \(\rho\) dan koefisien regresi yang sangat konsisten satu sama lain (\(\rho\) sekitar 0.73-0.74; koefisien Tahun sekitar 0.52), dan keduanya berhasil menaikkan nilai DW mendekati 2, sehingga dapat disimpulkan bahwa masalah autokorelasi pada model regresi IPM terhadap Tahun untuk Provinsi Jawa Timur telah berhasil ditangani oleh kedua metode tersebut.

;;Pada kasus data dengan tren yang hampir sempurna linear seperti IPM Jawa Timur, pencarian \(\rho\) berbasis SSE minimum semata dapat “tertarik” ke arah \(\rho\) mendekati 1 akibat variansi variabel X hasil transformasi yang mengecil (multikolinearitas semu), sehingga menghasilkan koefisien yang tidak stabil/tidak bermakna. Dalam kasus seperti ini, penting bagi analis untuk tidak hanya mengandalkan nilai SSE minimum, tetapi juga memeriksa kewajaran tanda dan besaran koefisien, serta membandingkannya dengan hasil metode lain (seperti Cochrane-Orcutt) sebagai pembanding.