Salah satu metode dalam analisis regresi dengan pendekatan non parametrik adalah Multivariate Adaptive Regression Spline (MARS). MARS merupakan perluasan yang komplek dari Regresi Spline dan Recursive Partitioning Regression (RPR). Metode MARS mengasumsikan bentuk fungsional antara variabel prediktor dan variabel respon yang tidak diketahui sehingga bentuk fungsional dari metode ini akan lebih fleksibel. Penerapan metode ini salah satunya dapat digunakan pada pembentukan model kemiskinan.
1 Input Data
Data yang digunakan berupa data sekunder dari total 119 kota dan kabupaten pada provinsi di Pulau Jawa dengan satu variabel respon yaitu Persentase Kemiskinan dan tiga variabel prediktor antara lain, Laju Pertumbuhan Produk Domestik Regional Bruto (PDRB), Indeks Pembangunan Manusia (IPM), dan Angka Harapan Hidup (AHH).
2 Diagram Pencar
Hal pertama yang dilakukan ketika membuat model regresi adalah dengan melihat bentuk kurva regresi dari data yang digunakan dengan bantuan diagram pencar. Bentuk kurva regresi yang terbentuk dapat menentukan pendekatan regresi yang akan diterapkan ketika membentuk model regresi. Berikut disajikan diagram pencar dari variabel penelitian.
> plot(x=datakemiskinan$PDRB, y=datakemiskinan$KEMISKINAN,
+ main="Plot Persentase Kemiskinan ~ PDRB",
+ xlab="PDRB", ylab="Persentase Kemiskinan",
+ pch=16, col="magenta")> plot(x=datakemiskinan$IPM, y=datakemiskinan$KEMISKINAN,
+ main="Plot Persentase Kemiskinan ~ IPM",
+ xlab="IPM", ylab="Persentase Kemiskinan",
+ pch=16, col="magenta")> plot(x=datakemiskinan$AHH, y=datakemiskinan$KEMISKINAN,
+ main="Plot Persentase Kemiskinan ~ AHH",
+ xlab="AHH", ylab="Persentase Kemiskinan",
+ pch=16, col="magenta")3 Statistika Deskriptif
Statistika deskriptif dilakukan untuk memperoleh gambaran umum suatu penelitian melalui karakteristik variabel yang digunakan pada penelitian. Salah satu jenis statistika deskriptif yang bisa diterapkan adalah dengan melihat ukuran pemusatan dan penyebaran dari data yang digunakan.
> summary(datakemiskinan)
PDRB IPM AHH KEMISKINAN
Min. :0.220 Min. :62.80 Min. :64.72 Min. : 2.570
1st Qu.:3.210 1st Qu.:69.12 1st Qu.:71.55 1st Qu.: 7.475
Median :3.610 Median :72.28 Median :72.80 Median :10.210
Mean :3.603 Mean :73.03 Mean :72.80 Mean :10.337
3rd Qu.:4.005 3rd Qu.:76.06 3rd Qu.:74.42 3rd Qu.:12.685
Max. :6.020 Max. :87.18 Max. :77.86 Max. :23.760
> var(datakemiskinan)
PDRB IPM AHH KEMISKINAN
PDRB 0.7976181 1.716649 0.418596 -1.287202
IPM 1.7166494 28.724633 7.965504 -14.621169
AHH 0.4185960 7.965504 6.856857 -2.256641
KEMISKINAN -1.2872018 -14.621169 -2.256641 17.6628034 Pendeteksian Non Multikolinearitas
Multikolinearitas merupakan suatu kondisi dimana terdapat hubungan linear antar variabel bebas dalam suatu model regresi. Untuk mendeteksi adanya multikolinearitas pada suatu model regresi linier yang melibatkan lebih dari dua variabel dapat digunakan Variance Inflation Factor (VIF). Nilai VIF yang besar (VIF>10) mengindikasikan adanya multikolinearitas.
> modelreg <- lm(KEMISKINAN ~ PDRB+IPM+AHH, data=datakemiskinan)
> summary(modelreg)
Call:
lm(formula = KEMISKINAN ~ PDRB + IPM + AHH, data = datakemiskinan)
Residuals:
Min 1Q Median 3Q Max
-5.4111 -1.9847 -0.7051 1.9920 8.4785
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 27.12449 7.94753 3.413 0.000888 ***
PDRB -0.56341 0.34137 -1.650 0.101576
IPM -0.58067 0.06798 -8.542 6.31e-14 ***
AHH 0.37985 0.13200 2.878 0.004779 **
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 3.09 on 115 degrees of freedom
Multiple R-squared: 0.4732, Adjusted R-squared: 0.4595
F-statistic: 34.43 on 3 and 115 DF, p-value: 5.901e-16
> car::vif(modelreg)
PDRB IPM AHH
1.148780 1.640424 1.476743 Dapat terlihat bahwa nilai VIF yang dihasilkan kurang dari 10 (VIF<10) untuk semua variabel bebas. Hal ini lantas menunjukkan bahwa tidak ada indikasi kasus multikolinearitas dalam variabel bebas pada penelitian ini.
5 Pemilihan Kombinasi MI, BF, MO
Pemilihan kombinasi MI, BF, dan MO merupakan suatu cara untuk menentukan model terbaik bagi spline. Pemilihan ini dapat dilihat dari penentuan titik knot optimalnya. Penentuan titik knot optimal dapat dilihat dari nilai GCV suatu peubah, semakin kecil nilai GCV dari suatu peubah, maka semakin penting peubah tersebut terhadap model yang dibangun.
> K3_12_0 <- earth(KEMISKINAN ~ PDRB+IPM+AHH,
+ data = datakemiskinan,
+ degree = 3, nprune = 12, minspan = 0)
> K3_12_1 <- earth(KEMISKINAN ~ PDRB+IPM+AHH,
+ data = datakemiskinan,
+ degree = 3, nprune = 12, minspan = 1)
> K3_12_2 <- earth(KEMISKINAN ~ PDRB+IPM+AHH,
+ data = datakemiskinan,
+ degree = 3, nprune = 12, minspan = 2)
> K3_12_3 <- earth(KEMISKINAN ~ PDRB+IPM+AHH,
+ data = datakemiskinan,
+ degree = 3, nprune = 12, minspan = 3)
>
> MI <- c(3,3,3,3)
> BF <- c(12,12,12,12)
> MO <- c(0,1,2,3)
> GCV <- c(K3_12_0$gcv, K3_12_1$gcv, K3_12_2$gcv, K3_12_3$gcv)
> list_gcv <- data.frame(MI, BF, MO, GCV) #MI = 3, BF = 12, MO = 0
> list_gcv
MI BF MO GCV
1 3 12 0 8.860529
2 3 12 1 9.426671
3 3 12 2 9.453310
4 3 12 3 9.425407Berdasarkan hasil perhitungan nilai GCV pada Tabel 4.3 didapati GCV terkecil sebesar 8.856. Sehingga berdasarkan nilai GCV terkecil, diperoleh model MARS terbaik yaitu dengan kombinasi MI = 3, BF = 12, dan MO = 0.
6 Model Kemiskinan
6.1 Hasil Pendugaan
Selanjutnya akan dibentuk model MARS sesuai dengan kombinasi MI, BF, dan MO yang telah diperoleh.
> modelkemiskinan1 <- earth(KEMISKINAN ~ PDRB+IPM+AHH,
+ data = datakemiskinan,
+ degree = 3, nprune = 12, minspan = 0)
> summary(modelkemiskinan1, style = "bf")
Call: earth(formula=KEMISKINAN~PDRB+IPM+AHH, data=datakemiskinan, degree=3,
nprune=12, minspan=0)
KEMISKINAN =
5.598118
+ 0.5862838 * bf1
+ 0.947152 * bf2
- 2.75053 * bf3 * bf2
+ 2.497897 * bf4 * bf2
bf1 h(81.96-IPM)
bf2 h(73.53-AHH)
bf3 h(PDRB-2.61)
bf4 h(PDRB-3.17)
Selected 5 of 20 terms, and 3 of 3 predictors (nprune=12)
Termination condition: Reached nk 21
Importance: IPM, PDRB, AHH
Number of terms at each degree of interaction: 1 2 2
GCV 8.860529 RSS 868.4807 GRSq 0.5025665 RSq 0.5833048Dengan MI = 3, BF = 12, dan MO = 0 yang telah diperoleh dilakukan pembentukan, model yang terbentuk dari kombinasi ini adalah sebagai berikut :
\[ Y =5.598+0.586BF1+0.947BF2-2.751BF3*BF2+2.498BF4*BF2 \]
6.2 Pengujian Asumsi Normalitas
Pengujian asumsi normalitas dilakukan untuk melihat apakah galat mengikuti distribusi normal atau tidak. Salah satu statistik uji yang digunakan untuk pengujian asumsi normalitas adalah Kolmogorov-Smirnov.
> res <- residuals(modelkemiskinan1)
> res_sq <- res^2
> ks.test(res, "pnorm", mean(res), sd(res)) #Sisaan tidak memenuhi asumsi normalitas
Asymptotic one-sample Kolmogorov-Smirnov test
data: res
D = 0.12512, p-value = 0.0482
alternative hypothesis: two-sidedDiperoleh p-value sebesar 0.0482 yang bernilai lebih kecil dari daripada \(\alpha\) = 0.05. Hal ini menunjukkan bahwa residual dari model MARS yang terbentuk tidak mengikuti distribusi normal sehingga perlu penanganan agar asumsi dapat terpenuhi
6.3 Penanganan Pelanggaran Asumsi Normalitas
Salah satu penanganan terhadap pelanggaran asumsi normalitas yaitu dengan menghapus pencilan dari data. Untuk dapat mendeteksi penciland ari sekelompok data, dapat dilihat dari boxplot residual model kemiskinan sebelumnya.
Plot diatas merupakan Normality Q-Q Plot yang memetakan residual model kemiskinan yang didekati dengan distribusi normal.Tampak residual model nyaris memenuhi asumsi normalitas, namun terdapat 3 data ekstrim yang jauh dari rata-rata residual model lainnya sehingga ketiga data ini dicurigai merupakan outlier.
Melalui gambar diatas, terlihat bahwa terdapat 3 pengamatan yang masuk pada data pencilan. Ketiga pengamatan ini secara detail terdapat pada pengamatan ke 69, 70, dan 86. Selanjutnya ketiga pengamatan ini akan dihapuskan dari data penelitian untuk kembali dibentuk model dan dijui asumsinya.
6.4 Pengujian Asumsi Homoskedastisitas
Ragam galat dikatakan memenuhi asumsi homoskedastisitas apabila tidak terdapat pola hubungan yang sistematis antara kuadrat galat \(\epsilon^2\) dengan nilai variabel bebas.
> bptest(modelkemiskinan1)
studentized Breusch-Pagan test
data: modelkemiskinan1
BP = 3.7941, df = 3, p-value = 0.2846Berdasarkan hasil uji nilai residual model MARS, diperoleh p-value sebesar 0.284 yang bernilai lebih besar dari daripada \(\alpha\) = 0.05. Hal ini menunjukkan bahwa terdapat kesamaan ragam residual dari model MARS yang terbentuk atau dapat dikatakan memenuhi asumsi homoskedastisitas.
7 Model Kemiskinan Setelah Penanganan
7.1 Hasil Pendugaan
> modelkemiskinan2 <- earth(KEMISKINAN ~ PDRB+IPM+AHH,
+ data = datakemiskinan_baru,
+ degree = 3, nprune = 12, minspan = 0)
> summary(modelkemiskinan2, style = "bf")
Call: earth(formula=KEMISKINAN~PDRB+IPM+AHH, data=datakemiskinan_baru,
degree=3, nprune=12, minspan=0)
KEMISKINAN =
5.075331
+ 0.5858659 * bf1
+ 0.8057583 * bf2 * bf3
- 0.7853521 * bf4 * bf3
- 0.2102555 * bf5 * bf3
bf1 h(81.95-IPM)
bf2 h(3.57-PDRB)
bf3 h(73.31-AHH)
bf4 h(PDRB-3.57)
bf5 h(69.12-IPM)
Selected 5 of 18 terms, and 3 of 3 predictors (nprune=12)
Termination condition: Reached nk 21
Importance: IPM, PDRB, AHH
Number of terms at each degree of interaction: 1 1 3
GCV 7.759239 RSS 737.4622 GRSq 0.5413536 RSq 0.6176501Melalui data dengan pencilan atau outlier yang telah dibuang serta serta kombinasi MI = 3, BF = 12, dan MO = 0 yang telah diperoleh, terbentuk model MARS sebagai berikut :
\[ Y =5.075+0.586BF1+0.806BF2*BF3-0.785BF4*BF3-0.210BF5*BF3 \]Dimana :
\[ BF1 = (81.95-X_2)_+ \] \[ BF2 = (3.57-X_1)_+ \] \[ BF3 = (73.31-X_3)_+ \] \[ BF4 = (X_1-3.57)_+ \] \[ BF5 = (69.12-X_2)_+ \]
7.2 Pengujian Asumsi Normalitas
> res_baru <- residuals(modelkemiskinan2)
> res_sq_baru <- res_baru^2
> ks.test(res_baru, "pnorm", mean(res_baru), sd(res_baru))
Asymptotic one-sample Kolmogorov-Smirnov test
data: res_baru
D = 0.087899, p-value = 0.3316
alternative hypothesis: two-sidedBerdasarkan hasil uji nilai residual model MARS, diperoleh p-value sebesar 0.3316 yang bernilai lebih besar dari daripada \(\alpha\) = 0.05. Hal ini menunjukkan bahwa residual dari model MARS yang terbentuk setelah pencilan dibuang telah memenuhi asumsi normalitas.
7.3 Pengujian Asumsi Homoskedastisitas
> bptest(modelkemiskinan2)
studentized Breusch-Pagan test
data: modelkemiskinan2
BP = 6.4574, df = 3, p-value = 0.09136Berdasarkan hasil uji nilai residual model MARS, diperoleh p-value sebesar 0.091 yang bernilai lebih besar dari daripada \(\alpha\) = 0.05. Hal ini menunjukkan bahwa terdapat kesamaan ragam residual dari model MARS yang terbentuk setelah pengamatan outlier dibuang dari penelitian atau dapat dikatakan memenuhi asumsi homoskedastisitas.
8 Uji Signifikansi Fungsi Basis
Setelah melakukan pendugaan parameter untuk membentuk model MARS, selanjutnya akan dilakukan uji signifikansi fungsi basis yang meliputi uji serentak dan uji parsial.
> matriks <- model.matrix(modelkemiskinan2)
> uji_parameter <- lm(datakemiskinan_baru$KEMISKINAN ~ matriks[,-1])
> summary(uji_parameter)
Call:
lm(formula = datakemiskinan_baru$KEMISKINAN ~ matriks[, -1])
Residuals:
Min 1Q Median 3Q Max
-4.8853 -1.5647 -0.3678 1.3109 6.0943
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 5.07533 0.51621 9.832 < 2e-16 ***
matriks[, -1]h(81.95-IPM) 0.58587 0.05510 10.632 < 2e-16 ***
matriks[, -1]h(PDRB-3.57)*h(73.31-AHH) -0.78535 0.24294 -3.233 0.001615 **
matriks[, -1]h(3.57-PDRB)*h(73.31-AHH) 0.80576 0.15371 5.242 7.65e-07 ***
matriks[, -1]h(69.12-IPM)*h(73.31-AHH) -0.21026 0.05407 -3.889 0.000172 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 2.578 on 111 degrees of freedom
Multiple R-squared: 0.6177, Adjusted R-squared: 0.6039
F-statistic: 44.83 on 4 and 111 DF, p-value: < 2.2e-16Dari hasil penelitian yang telah dilakukan, diperoleh model kemiskinan kota dan kabupaten pada provinsi di Pulau Jawa adalah sebagai berikut :
\[ Y =5.075+0.586(81.95-X_2)_++0.806(3.57-X_1)_+*(73.31-X_3)_+ \] \[ -0.785(X_1-3.57)_+*(73.31-X_3)_+-0.210(69.12-X_2)_+*(73.31-X_3)_+ \]
Dengan : \(Y\) : Persentase Kemiskinan \(X_1\) : Laju Pertumbuhan PDRB \(X_2\) : Indeks Pembangunan Manusia (IPM)\(X_2\) : Angka Harapan Hidup (AHH)
Perubahan Persentase Kemiskinan akan terjadi pada batas tertentu nilai tiap variabel prediktor yang terbentuk dari titik knot, yaitu Laju Pertumbuhan PDRB \(\neq\) 3.57%, indeks IPM \(<\) 69.12, dan AHH \(<\) 73.31 tahun.
Adapun berdasarkan model MARS yang telah terbentuk dapat diketahui pula bahwa baik secara simultan maupun parsial tiap-tiap fungsi basis yang menyusun model berpengaruh secara signifikan terhadap model MARS. Adapun diperoleh pula nilai \(R^2\) sebesar 0.6039 yang menunjukkan keragaman variabel respon dapat dijelaskan oleh hubungan variabel prediktor sebesar 60.39% sementara 39.61% sisanya dijelaskan oleh variabel lain diluar model.