Dosen Pengampu: Dr. Pepi Novianti, S.Si., M.Si.; Riwi Dyah Pangesti, S.Si., M.Si.; Susi Wijuniamurti, S.Si., M.Stat.; Wina Ayu Lestari, S.Si., M.Stat.

Asisten Praktikum: Mustika Surya Ningsih (F1F024018); Khalisha Qori Shofa (F1F024048); Rameza Elia (F1F024056); Carolin Veronika (F1F024060)


BAB I PENDAHULUAN

1.1 Latar Belakang

Data mentah perlu diolah dengan metode analisis yang tepat agar menjadi informasi yang bermakna. Salah satu metode yang paling sering digunakan adalah analisis regresi, yaitu metode untuk mengetahui dan mengukur pola hubungan antara sebuah variabel dependen dengan satu atau lebih variabel independen (Prasmono & Ahdika, 2023). Berdasarkan banyaknya variabel independen, regresi linier dibedakan menjadi regresi linier sederhana dan regresi linier berganda (Kartiningrum dkk., 2022).

Parameter model regresi umumnya diestimasi dengan Metode Kuadrat Terkecil (MKT) yang meminimumkan jumlah kuadrat galat. Agar penduga yang diperoleh bersifat Best Linear Unbiased Estimator (BLUE), beberapa asumsi klasik harus terpenuhi, yaitu linieritas, tidak ada multikolinieritas, tidak ada heteroskedastisitas, tidak ada autokorelasi, dan galat berdistribusi normal (Sabrina dkk., 2023). Setelah model terbentuk, signifikansi parameter diuji secara simultan dengan Uji F dan secara parsial dengan Uji t (Rini, 2026).

Selain asumsi klasik, kualitas model juga dipengaruhi oleh keberadaan outlier. Outlier dapat membuat distribusi data menjadi tidak normal, menimbulkan bias pada penduga parameter, dan memengaruhi hasil uji signifikansi parameter (Barus, 2023). Oleh karena itu, evaluasi model melalui identifikasi dan pengujian outlier perlu dilakukan (Hakim, 2016).

Laporan ini mengintegrasikan tiga topik praktikum sebelumnya (uji asumsi klasik, pengujian signifikansi parameter, dan deteksi outlier) pada satu kasus, yaitu pemodelan Indeks Pembangunan Manusia (IPM) menurut provinsi di Indonesia menggunakan program R.

1.2 Rumusan Masalah

  1. Bagaimana memilih data sekunder yang memenuhi ketentuan analisis regresi linier berganda dan bagaimana karakteristik datanya?
  2. Bagaimana model regresi linier berganda yang terbentuk dan bagaimana interpretasinya?
  3. Apakah model memenuhi asumsi klasik (linieritas, multikolinieritas, heteroskedastisitas, normalitas, dan autokorelasi)?
  4. Apakah variabel independen berpengaruh signifikan terhadap variabel dependen, baik secara simultan (Uji F) maupun parsial (Uji t)?
  5. Apakah terdapat outlier pada data berdasarkan Influence Plot dan Uji Bonferroni?

1.3 Tujuan Penelitian

  1. Memilih dan mengeksplorasi data sekunder serta menyajikan statistik deskriptifnya.
  2. Membentuk dan mengestimasi model regresi linier berganda serta menginterpretasikannya.
  3. Menguji asumsi klasik pada model regresi.
  4. Menguji signifikansi parameter dengan Uji F dan Uji t.
  5. Mengidentifikasi dan menguji outlier menggunakan Influence Plot dan Uji Bonferroni.

1.4 Manfaat Penelitian

  • Bagi penulis: menambah pemahaman dan keterampilan menerapkan analisis regresi linier berganda secara utuh, mulai dari pemilihan data hingga evaluasi model, menggunakan program R.
  • Bagi pembaca: menjadi rujukan alur analisis regresi berganda yang sistematis dan dapat direproduksi.

1.5 Batasan Masalah

Analisis dibatasi pada: (1) data sekunder dengan minimal 35 observasi dan minimal 3 variabel independen yang berpengaruh signifikan; (2) eksplorasi data dan statistik deskriptif; (3) pembentukan dan estimasi model regresi linier berganda; (4) pengujian asumsi klasik; (5) pengujian hipotesis melalui Uji F dan Uji t; serta (6) evaluasi model melalui identifikasi dan pengujian outlier menggunakan Influence Plot dan Uji Bonferroni. Taraf nyata yang digunakan adalah \(\alpha = 5\%\).

1.6 Sistematika Penulisan

Bab Isi
BAB I Pendahuluan Latar belakang, rumusan masalah, tujuan, manfaat, batasan masalah, dan sistematika penulisan.
BAB II Tinjauan Pustaka Teori regresi linier berganda, asumsi klasik, uji F dan uji t, serta outlier.
BAB III Metode Penelitian Jenis dan sumber data, variabel penelitian, langkah analisis, dan diagram alir.
BAB IV Hasil dan Pembahasan Pemilihan data, eksplorasi, statistik deskriptif, model, asumsi klasik, uji hipotesis, dan evaluasi outlier.
BAB V Kesimpulan dan Saran Kesimpulan dan saran.
Daftar Pustaka dan Lampiran Rujukan, data, dan informasi sesi R.

BAB II TINJAUAN PUSTAKA

2.1 Regresi Linier Berganda

Regresi merupakan teknik statistik untuk mengestimasi hubungan antara satu atau lebih variabel independen dengan satu variabel dependen, dengan tujuan memprediksi nilai variabel dependen ketika nilai variabel independen diketahui (Kartiningrum dkk., 2022). Model regresi linier berganda dengan \(k\) variabel independen dituliskan sebagai berikut (Suryono, 2021):

\[Y_i = \beta_0 + \beta_1 X_{1i} + \beta_2 X_{2i} + \cdots + \beta_k X_{ki} + \varepsilon_i \qquad (2.1)\]

dengan \(Y\) variabel dependen, \(X_1,\dots,X_k\) variabel independen, \(\beta_0,\dots,\beta_k\) parameter regresi, dan \(\varepsilon\) galat acak. Dalam notasi matriks, penduga MKT adalah:

\[\hat{\boldsymbol{\beta}} = (\mathbf{X}^{\top}\mathbf{X})^{-1}\mathbf{X}^{\top}\mathbf{y} \qquad (2.2)\]

Koefisien determinasi \(R^2 = 1 - \dfrac{JKG}{JKT}\) dan \(R^2_{adj} = 1 - (1-R^2)\dfrac{n-1}{n-k-1}\) digunakan untuk menilai kemampuan model menjelaskan keragaman \(Y\).

2.2 Uji Asumsi Klasik

Berikut ringkasan uji asumsi klasik yang digunakan (Rini, 2026):

  1. Linieritas. Hubungan antara \(Y\) dan \(X\) diasumsikan linier. Diuji dengan Ramsey RESET dan diperiksa melalui plot residual terhadap nilai dugaan.
  2. Multikolinieritas. Model diasumsikan tidak memuat hubungan linier yang kuat antarvariabel independen. Ukurannya adalah Variance Inflation Factor (VIF), \(VIF_j = 1/(1-R_j^2)\). Multikolinieritas dianggap bermasalah jika \(VIF \ge 10\).
  3. Heteroskedastisitas. Ragam galat diasumsikan konstan (homoskedastis). Diuji dengan Breusch-Pagan; \(H_0\): ragam galat konstan.
  4. Normalitas galat. Galat diasumsikan berdistribusi normal. Diuji dengan Shapiro-Wilk dan diperiksa melalui Q-Q plot; \(H_0\): galat berdistribusi normal.
  5. Autokorelasi. Galat diasumsikan saling bebas. Diuji dengan Durbin-Watson, \(DW = \dfrac{\sum_{t=2}^{n}(e_t-e_{t-1})^2}{\sum_{t=1}^{n}e_t^2}\); nilai \(DW\) yang mendekati 2 menunjukkan tidak ada autokorelasi.

Untuk keempat uji berbasis p-value, \(H_0\) ditolak jika \(p\text{-value} \le \alpha\).

2.3 Pengujian Signifikansi Parameter

Uji simultan (Uji F) menguji apakah model regresi secara keseluruhan dapat diterima, yaitu apakah sedikitnya satu variabel independen berhubungan linier dengan \(Y\) (Rini, 2026).

\[H_0: \beta_1=\beta_2=\cdots=\beta_k=0 \qquad H_1: \text{minimal ada satu } \beta_j \neq 0\]

\[F_{hitung} = \frac{R^2/k}{(1-R^2)/(n-k-1)}\]

\(H_0\) ditolak jika \(F_{hitung} > F_{\alpha;\,k;\,n-k-1}\) atau \(p\text{-value} < \alpha\).

Uji parsial (Uji t) menguji pengaruh tiap variabel independen secara individual (Firmansyah & Tristie, 2021):

\[H_0: \beta_j = 0 \qquad H_1: \beta_j \neq 0 \qquad t_{hitung} = \frac{b_j}{SE(b_j)}\]

\(H_0\) ditolak jika \(|t_{hitung}| > t_{\alpha/2;\,n-k-1}\) (Wahyono, 2021).

2.4 Identifikasi Outlier

Outlier adalah pengamatan yang menyimpang dari pola mayoritas data. Keberadaannya dapat membuat distribusi data tidak normal, menimbulkan bias pada taksiran parameter, dan memengaruhi hasil uji signifikansi (Barus, 2023). Deteksi outlier dan pengamatan berpengaruh dilakukan melalui diagnostika regresi, yaitu statistik per kasus (Hakim, 2016). Pendekatan yang digunakan (Rini, 2026):

a. Outlier pada pengamatan \(Y\) dideteksi dengan studentized deleted residual:

\[t_i = e_i\sqrt{\frac{n-p-1}{SSE\,(1-h_{ii})-e_i^2}} \qquad (2.3)\]

dengan \(p = k+1\) banyaknya parameter. Hipotesisnya: \(H_0\): kasus ke-\(i\) bukan outlier; \(H_1\): kasus ke-\(i\) merupakan outlier.

b. Uji Bonferroni. Karena \(n\) pengamatan diuji sekaligus, peluang salah menyatakan suatu data sebagai outlier membesar. Uji Bonferroni mengoreksi hal ini dengan mengalikan p-value tak terkoreksi dengan \(n\) (\(p_{Bonf} = \min(1,\, n \times p_i)\)). Kasus dinyatakan outlier jika \(p_{Bonf} < \alpha\), atau jika \(|t_i|\) melebihi \(t_{\alpha/(2n);\,n-p-1}\).

c. Outlier pada pengamatan \(X\) (leverage) dideteksi dengan elemen diagonal matriks hat, \(h_{ii}\), yang memenuhi \(0 \le h_{ii} \le 1\) dan \(\sum h_{ii} = p\). Pengamatan dengan \(h_{ii} > 2p/n\) dinyatakan sebagai outlier pengamatan-\(X\).

d. Influence Plot menampilkan studentized residual (sumbu vertikal), hat value (sumbu horizontal), dan Cook’s Distance (ukuran lingkaran) dalam satu grafik untuk menilai pengaruh tiap pengamatan terhadap model.


BAB III METODE PENELITIAN

3.1 Jenis dan Sumber Data

Data yang digunakan adalah data kuantitatif bertipe rasio dan merupakan data sekunder, yaitu data yang diperoleh secara tidak langsung melalui publikasi resmi Badan Pusat Statistik (BPS) (Badan Pusat Statistik, 2024a, 2024b, 2024c, 2024d). Unit pengamatan adalah 38 provinsi di Indonesia pada tahun 2024.

3.2 Variabel Penelitian

Simbol Variabel Peran Satuan
\(Y\) Indeks Pembangunan Manusia (IPM) Dependen indeks
\(X_1\) Harapan Lama Sekolah Independen tahun
\(X_2\) Proporsi individu yang menggunakan internet Independen persen
\(X_3\) Persentase penduduk yang menggunakan komputer Independen persen

Model yang diestimasi adalah:

\[Y_i = \beta_0 + \beta_1 X_{1i} + \beta_2 X_{2i} + \beta_3 X_{3i} + \varepsilon_i\]

3.3 Analisis Data

  1. Mengumpulkan dan memilih data sekunder (minimal 35 observasi, minimal 3 variabel independen).
  2. Memasukkan data ke program R dan melakukan eksplorasi data (struktur, nilai hilang, grafik).
  3. Menghitung statistik deskriptif.
  4. Membentuk dan mengestimasi model regresi linier berganda dengan fungsi lm().
  5. Menguji asumsi klasik: linieritas (resettest), multikolinieritas (vif), heteroskedastisitas (bptest), normalitas (shapiro.test), dan autokorelasi (dwtest).
  6. Menguji hipotesis: Uji F (simultan) dan Uji t (parsial).
  7. Mengevaluasi model: identifikasi outlier dengan influencePlot() dan Uji Bonferroni dengan outlierTest().
  8. Menginterpretasikan hasil dan menarik kesimpulan.

3.4 Diagram Alir Penelitian

                  [ Mulai ]
                      |
        [ Pengumpulan & pemilihan data sekunder ]
                      |
        [ Input data & eksplorasi data di R ]
                      |
              [ Statistik deskriptif ]
                      |
     [ Pembentukan & estimasi model regresi (lm) ]
                      |
     [ Uji asumsi klasik: linieritas, VIF, Breusch-Pagan,
                Shapiro-Wilk, Durbin-Watson ]
                      |
        [ Uji F (simultan)  ->  Uji t (parsial) ]
                      |
     [ Evaluasi model: Influence Plot & Uji Bonferroni ]
                      |
          [ Interpretasi & kesimpulan ]
                      |
                  [ Selesai ]

Gambar 3.1. Diagram alir penelitian


BAB IV HASIL DAN PEMBAHASAN

4.1 Pengumpulan dan Pemilihan Data Sekunder

Data bersumber dari tabel statistik BPS: IPM (metode baru), harapan lama sekolah, proporsi individu yang menggunakan internet, dan persentase penduduk yang menggunakan komputer menurut provinsi. Data dimasukkan ke R sebagai data frame berikut (38 provinsi).

dat <- read.csv(text = "
Provinsi,Y,X1,X2,X3
ACEH,74.03,14.4,35.6,9.37
SUMATERA UTARA,74.02,13.5,41.38,9.95
SUMATERA BARAT,74.49,14.31,41.15,12.83
RIAU,74.79,13.44,44.97,10.3
JAMBI,73.43,13.34,42.68,10.0
SUMATERA SELATAN,72.3,12.65,38.14,8.79
BENGKULU,73.39,13.76,40.72,11.34
LAMPUNG,71.81,12.79,40.17,7.88
KEP. BANGKA BELITUNG,73.33,12.5,45.85,11.21
KEP. RIAU,77.97,13.28,65.02,18.34
DKI JAKARTA,83.08,13.8,73.46,23.47
JAWA BARAT,74.43,13.02,53.94,14.54
JAWA TENGAH,73.88,13.05,47.74,10.1
DI YOGYAKARTA,81.55,15.78,61.73,19.91
JAWA TIMUR,74.09,13.44,47.1,10.92
BANTEN,74.48,13.11,56.25,13.72
BALI,77.76,13.63,54.08,17.25
NUSA TENGGARA BARAT,70.93,13.99,39.16,10.29
NUSA TENGGARA TIMUR,67.39,13.34,26.29,11.13
KALIMANTAN BARAT,70.13,12.69,38.38,8.89
KALIMANTAN TENGAH,72.73,12.78,46.73,10.8
KALIMANTAN SELATAN,73.03,13.12,50.37,11.22
KALIMANTAN TIMUR,78.83,14.04,59.12,15.48
KALIMANTAN UTARA,73.02,13.31,54.3,11.81
SULAWESI UTARA,75.03,12.98,46.73,10.97
SULAWESI TENGAH,71.56,13.35,35.52,10.99
SULAWESI SELATAN,74.05,13.56,43.91,12.97
SULAWESI TENGGARA,73.48,13.72,41.92,12.29
GORONTALO,71.23,13.18,41.78,12.86
SULAWESI BARAT,68.2,12.9,31.26,10.02
MALUKU,71.57,14.1,33.89,11.67
MALUKU UTARA,71.03,13.76,29.13,9.61
PAPUA BARAT,67.02,13.21,43.46,10.09
PAPUA BARAT DAYA,68.63,13.89,0.0,9.71
PAPUA,73.0,13.94,21.7,13.61
PAPUA SELATAN,67.9,12.68,0.0,10.94
PAPUA TENGAH,59.75,9.64,0.0,4.81
PAPUA PEGUNUNGAN,53.42,9.98,0.0,1.16
", stringsAsFactors = FALSE)

dat$Provinsi <- trimws(dat$Provinsi)

Alasan pemilihan data

Ketentuan data adalah minimal 35 observasi, minimal 3 variabel independen, dan seluruh variabel independen signifikan. Berdasarkan tiga set data yang sebelumnya dikerjakan pada praktikum, set data IPM provinsi dipilih dengan pertimbangan berikut.

Kandidat data \(n\) Hasil pada praktikum sebelumnya Keputusan
Usaha pertanian perorangan (padi, palawija, peternakan, kehutanan) 38 Semua variabel signifikan, tetapi \(VIF\) = 37.7 dan 51.3 (multikolinieritas berat), heteroskedastisitas, dan galat tidak normal Tidak dipilih
IPM kabupaten/kota (Aceh dan Sumatera Utara) 35 Variabel angka melek huruf (\(X_2\)) tidak signifikan (\(p\) = 0.7638) Tidak dipilih
IPM provinsi, 2024 38 Ketiga variabel independen signifikan (\(p\) < 0.05) Dipilih

4.2 Eksplorasi Data

dim(dat)            # jumlah observasi dan variabel
#> [1] 38  5
str(dat)            # struktur data
#> 'data.frame':    38 obs. of  5 variables:
#>  $ Provinsi: chr  "ACEH" "SUMATERA UTARA" "SUMATERA BARAT" "RIAU" ...
#>  $ Y       : num  74 74 74.5 74.8 73.4 ...
#>  $ X1      : num  14.4 13.5 14.3 13.4 13.3 ...
#>  $ X2      : num  35.6 41.4 41.1 45 42.7 ...
#>  $ X3      : num  9.37 9.95 12.83 10.3 10 ...
colSums(is.na(dat)) # pemeriksaan nilai hilang
#> Provinsi        Y       X1       X2       X3 
#>        0        0        0        0        0
head(dat)

Data terdiri dari 38 observasi dan 5 kolom (nama provinsi, \(Y\), \(X_1\), \(X_2\), \(X_3\)), seluruh variabel numerik berjenis rasio, dan tidak ada nilai hilang (NA).

par(mfrow = c(1, 4))
boxplot(dat$Y,  main = "Y (IPM)",  col = "#9ecae1")
boxplot(dat$X1, main = "X1 (HLS)", col = "#a1d99b")
boxplot(dat$X2, main = "X2 (Internet)", col = "#fdd0a2")
boxplot(dat$X3, main = "X3 (Komputer)", col = "#dadaeb")

par(mfrow = c(1, 1))

Gambar 4.1. Boxplot masing-masing variabel

pairs(dat[, c("Y", "X1", "X2", "X3")], panel = panel.smooth,
      lower.panel = NULL, pch = 19, col = "#3182bd",
      main = "Diagram pencar antarvariabel")

Gambar 4.2. Diagram pencar antarvariabel

kable(round(cor(dat[, c("Y", "X1", "X2", "X3")]), 4),
      caption = "Tabel 4.1. Matriks korelasi antarvariabel")
Tabel 4.1. Matriks korelasi antarvariabel
Y X1 X2 X3
Y 1.0000 0.7613 0.8318 0.8503
X1 0.7613 1.0000 0.5029 0.6481
X2 0.8318 0.5029 1.0000 0.7187
X3 0.8503 0.6481 0.7187 1.0000

Diagram pencar menunjukkan pola hubungan yang cenderung linier dan searah antara \(Y\) dengan setiap \(X\). Korelasi \(Y\) dengan \(X_1\), \(X_2\), dan \(X_3\) berturut-turut sebesar 0.7613, 0.8318, dan 0.8503, sehingga ketiga variabel independen layak dimasukkan ke dalam model. Korelasi antarvariabel independen tertinggi adalah \(X_2\) dengan \(X_3\) (0.7187), yang tergolong kuat namun perlu dikonfirmasi dengan VIF pada uji multikolinieritas. Pada boxplot terlihat beberapa titik di luar batas, terutama pada \(Y\) (nilai rendah) dan \(X_3\) (nilai tinggi). Titik-titik ini diperiksa lebih lanjut pada evaluasi outlier (Subbab 4.7).

4.3 Statistik Deskriptif

desk <- sapply(dat[, c("Y", "X1", "X2", "X3")], function(v)
  c(Min = min(v), Q1 = unname(quantile(v, 0.25)), Median = median(v),
    Mean = mean(v), Q3 = unname(quantile(v, 0.75)), Max = max(v), SD = sd(v)))
kable(round(desk, 3), caption = "Tabel 4.2. Statistik deskriptif data")
Tabel 4.2. Statistik deskriptif data
Y X1 X2 X3
Min 53.420 9.640 0.000 1.160
Q1 71.080 12.990 35.540 10.005
Median 73.180 13.340 41.850 10.980
Mean 72.388 13.262 39.832 11.612
Q3 74.345 13.760 47.580 12.852
Max 83.080 15.780 73.460 23.470
SD 5.150 1.028 17.287 3.821

Berdasarkan Tabel 4.2:

  • IPM (\(Y\)) berkisar dari 53.42 (PAPUA PEGUNUNGAN) hingga 83.08 (DKI JAKARTA) dengan rata-rata 72.39 dan median 73.18. Rata-rata yang sedikit di bawah median menunjukkan distribusi menjulur ke kiri akibat beberapa provinsi ber-IPM rendah.
  • Harapan lama sekolah (\(X_1\)) berkisar dari 9.64 (PAPUA TENGAH) hingga 15.78 (DI YOGYAKARTA), dengan rata-rata 13.26 dan simpangan baku 1.03. Rentang antarkuartil yang sempit menunjukkan nilainya relatif seragam antarprovinsi.
  • Penggunaan internet (\(X_2\)) berkisar dari 0 hingga 73.46 (DKI JAKARTA), dengan rata-rata 39.83. Variabel ini paling beragam (simpangan baku 17.29).
  • Penggunaan komputer (\(X_3\)) berkisar dari 1.16 (PAPUA PEGUNUNGAN) hingga 23.47 (DKI JAKARTA), dengan rata-rata 11.61 lebih tinggi dari median 10.98 karena pengaruh beberapa provinsi bernilai tinggi.

Catatan data. Terdapat 4 provinsi dengan \(X_2 = 0\) (PAPUA BARAT DAYA, PAPUA SELATAN, PAPUA TENGAH, PAPUA PEGUNUNGAN), seluruhnya di wilayah Papua. Nilai nol tersebut kemungkinan mencerminkan data yang belum tersedia pada provinsi-provinsi pemekaran baru, bukan penggunaan internet yang benar-benar nol. Hal ini perlu diverifikasi ke sumber dan menjadi catatan dalam menafsirkan hasil.

4.4 Pembentukan dan Estimasi Model Regresi

model <- lm(Y ~ X1 + X2 + X3, data = dat)
ringkasan <- summary(model)
ringkasan
#> 
#> Call:
#> lm(formula = Y ~ X1 + X2 + X3, data = dat)
#> 
#> Residuals:
#>     Min      1Q  Median      3Q     Max 
#> -5.0829 -0.6696  0.1228  1.2520  2.5096 
#> 
#> Coefficients:
#>             Estimate Std. Error t value        Pr(>|t|)    
#> (Intercept) 39.96175    4.34405   9.199 0.0000000000946 ***
#> X1           1.67779    0.37766   4.443 0.0000895909905 ***
#> X2           0.12832    0.02461   5.215 0.0000090268382 ***
#> X3           0.43613    0.12633   3.452         0.00151 ** 
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> Residual standard error: 1.794 on 34 degrees of freedom
#> Multiple R-squared:  0.8884, Adjusted R-squared:  0.8786 
#> F-statistic: 90.26 on 3 and 34 DF,  p-value: 0.0000000000000002886
koef <- coef(ringkasan)
tab_koef <- data.frame(
  Parameter   = rownames(koef),
  Estimate    = round(koef[, 1], 5),
  Std.Error   = round(koef[, 2], 5),
  t.value     = round(koef[, 3], 3),
  `Pr(>|t|)`  = fp(koef[, 4]),
  check.names = FALSE, row.names = NULL)
kable(tab_koef, caption = "Tabel 4.3. Koefisien regresi")
Tabel 4.3. Koefisien regresi
Parameter Estimate Std.Error t.value Pr(>|t|)
(Intercept) 39.96175 4.34405 9.199 9.457e-11
X1 1.67779 0.37766 4.443 8.959e-05
X2 0.12832 0.02461 5.215 9.027e-06
X3 0.43613 0.12633 3.452 0.0015

Model regresi linier berganda yang terbentuk:

\[\hat{Y}_i = 39.96175 + 1.67779\,X_{1i} + 0.12832\,X_{2i} + 0.43613\,X_{3i}\]

Interpretasi.

  • Konstanta (\(b_0\) = 39.962): jika harapan lama sekolah, penggunaan internet, dan penggunaan komputer bernilai nol, IPM dugaan adalah 39.962. Nilai ini hanya bermakna matematis karena nilai nol berada di luar rentang data.
  • \(b_1\) = 1.67779: setiap kenaikan harapan lama sekolah 1 tahun meningkatkan IPM sebesar 1.678 poin, dengan \(X_2\) dan \(X_3\) dianggap tetap.
  • \(b_2\) = 0.12832: setiap kenaikan proporsi pengguna internet 1 poin persen meningkatkan IPM sebesar 0.128 poin, dengan \(X_1\) dan \(X_3\) dianggap tetap.
  • \(b_3\) = 0.43613: setiap kenaikan persentase pengguna komputer 1 poin persen meningkatkan IPM sebesar 0.436 poin, dengan \(X_1\) dan \(X_2\) dianggap tetap.

Ketiga koefisien bernilai positif sehingga seluruh variabel independen berhubungan searah dengan IPM. Koefisien determinasi \(R^2\) = 0.8884 dan \(R^2_{adj}\) = 0.8786, artinya sekitar 87.86% keragaman IPM dapat dijelaskan oleh ketiga variabel dalam model, sedangkan sisanya dijelaskan oleh faktor lain di luar model. Residual standard error sebesar 1.794 poin menunjukkan simpangan rata-rata nilai amatan terhadap nilai dugaan.

4.5 Pengujian Asumsi Klasik

Taraf nyata \(\alpha = 0.05\) digunakan pada seluruh pengujian.

4.5.1 Uji Linieritas

reset <- resettest(model, power = 2:3, type = "fitted")
reset
#> 
#>  RESET test
#> 
#> data:  model
#> RESET = 2.0586, df1 = 2, df2 = 32, p-value = 0.1442
par(mfrow = c(1, 2))
plot(fitted(model), resid(model), pch = 19, col = "#3182bd",
     xlab = "Nilai dugaan", ylab = "Residual", main = "Residual vs Nilai Dugaan")
abline(h = 0, lty = 2, col = "red")
lines(lowess(fitted(model), resid(model)), col = "darkgreen", lwd = 2)
plot(model, which = 3, pch = 19, col = "#3182bd")   # Scale-Location

par(mfrow = c(1, 1))

Gambar 4.3. Plot residual terhadap nilai dugaan (kiri) dan plot Scale-Location (kanan)

  • \(H_0\): model berbentuk linier; \(H_1\): model tidak linier.
  • Statistik uji: \(F\) = 2.0586, \(p\)-value = 0.1442.
  • Kesimpulan: karena \(p\)-value 0.1442 > 0.05, \(H_0\) gagal ditolak, sehingga asumsi linieritas terpenuhi. Plot residual juga tidak menunjukkan pola lengkung yang kuat.

4.5.2 Uji Multikolinieritas

vif_val <- vif(model)
tab_vif <- data.frame(Variabel = names(vif_val),
                      VIF = round(vif_val, 4),
                      Toleransi = round(1 / vif_val, 4), row.names = NULL)
kable(tab_vif, caption = "Tabel 4.4. Hasil uji multikolinieritas (VIF)")
Tabel 4.4. Hasil uji multikolinieritas (VIF)
Variabel VIF Toleransi
X1 1.7328 0.5771
X2 2.0788 0.4810
X3 2.6778 0.3734

Nilai VIF masing-masing variabel (\(X_1\) = 1.733, \(X_2\) = 2.079, \(X_3\) = 2.678) seluruhnya jauh di bawah 10 dan nilai toleransi jauh di atas 0.1. Dengan demikian tidak terdapat multikolinieritas, sehingga asumsi multikolinieritas terpenuhi. Meskipun korelasi \(X_2\) dan \(X_3\) cukup kuat (0.7187), tingkat keterkaitannya belum mengganggu pendugaan koefisien.

4.5.3 Uji Heteroskedastisitas

bp <- bptest(model)
bp
#> 
#>  studentized Breusch-Pagan test
#> 
#> data:  model
#> BP = 5.1021, df = 3, p-value = 0.1645
  • \(H_0\): ragam galat konstan (homoskedastis); \(H_1\): ragam galat tidak konstan (heteroskedastis).
  • Statistik uji: \(BP\) = 5.1021 dengan \(df\) = 3, \(p\)-value = 0.1645.
  • Kriteria: tolak \(H_0\) jika \(p\)-value \(\le \alpha\).
  • Kesimpulan: karena \(p\)-value 0.1645 > 0.05, \(H_0\) gagal ditolak. Pada taraf nyata 5% tidak terdapat heteroskedastisitas, sehingga asumsi terpenuhi.

4.5.4 Uji Normalitas Galat

sw <- shapiro.test(resid(model))
sw
#> 
#>  Shapiro-Wilk normality test
#> 
#> data:  resid(model)
#> W = 0.9381, p-value = 0.03636
par(mfrow = c(1, 2))
qqnorm(resid(model), pch = 19, col = "#3182bd", main = "Normal Q-Q Plot Residual")
qqline(resid(model), col = "red", lwd = 2)
hist(resid(model), breaks = 10, col = "#9ecae1", border = "white",
     main = "Histogram Residual", xlab = "Residual")

par(mfrow = c(1, 1))

Gambar 4.4. Q-Q plot dan histogram residual

  • \(H_0\): galat berdistribusi normal; \(H_1\): galat tidak berdistribusi normal.
  • Statistik uji: \(W\) = 0.9381, \(p\)-value = 0.0364.
  • Kesimpulan: karena \(p\)-value 0.0364 < 0.05, \(H_0\) ditolak. Pada taraf nyata 5% galat tidak berdistribusi normal, sehingga asumsi normalitas belum terpenuhi secara formal. Q-Q plot menunjukkan penyimpangan pada ujung bawah (ekor kiri), tempat terdapat residual negatif yang ekstrem. Penyebab ketidaknormalan ini ditelusuri pada evaluasi outlier (Subbab 4.7).

4.5.5 Uji Autokorelasi

dw <- dwtest(model)
dw
#> 
#>  Durbin-Watson test
#> 
#> data:  model
#> DW = 1.7964, p-value = 0.1772
#> alternative hypothesis: true autocorrelation is greater than 0
  • \(H_0\): tidak ada autokorelasi; \(H_1\): ada autokorelasi.
  • Statistik uji: \(DW\) = 1.7964, \(p\)-value = 0.1772.
  • Kesimpulan: nilai \(DW\) mendekati 2 dan \(p\)-value > 0.05, sehingga \(H_0\) gagal ditolak. Tidak terdapat autokorelasi dan asumsi terpenuhi. Perlu dicatat bahwa data ini bersifat cross-section (antarprovinsi), sehingga urutan observasi tidak memiliki makna waktu dan uji ini bersifat pelengkap.

4.5.6 Rekapitulasi Uji Asumsi Klasik

rekap <- data.frame(
  Asumsi = c("Linieritas (RESET)", "Multikolinieritas (VIF maksimum)",
             "Heteroskedastisitas (Breusch-Pagan)",
             "Normalitas galat (Shapiro-Wilk)", "Autokorelasi (Durbin-Watson)"),
  Statistik = c(as.numeric(reset$statistic), max(vif_val), as.numeric(bp$statistic),
                as.numeric(sw$statistic), as.numeric(dw$statistic)),
  `p-value` = c(fp(reset$p.value), "-", fp(bp$p.value), fp(sw$p.value), fp(dw$p.value)),
  Keputusan = c(ifelse(reset$p.value > 0.05, "Terpenuhi", "Tidak terpenuhi"),
                ifelse(max(vif_val) < 10,    "Terpenuhi", "Tidak terpenuhi"),
                ifelse(bp$p.value > 0.05,    "Terpenuhi", "Tidak terpenuhi"),
                ifelse(sw$p.value > 0.05,    "Terpenuhi", "Tidak terpenuhi"),
                ifelse(dw$p.value > 0.05,    "Terpenuhi", "Tidak terpenuhi")),
  check.names = FALSE)
rekap$Statistik <- round(rekap$Statistik, 4)
kable(rekap, caption = "Tabel 4.5. Rekapitulasi uji asumsi klasik")
Tabel 4.5. Rekapitulasi uji asumsi klasik
Asumsi Statistik p-value Keputusan
Linieritas (RESET) 2.0586 0.1442 Terpenuhi
Multikolinieritas (VIF maksimum) 2.6778 - Terpenuhi
Heteroskedastisitas (Breusch-Pagan) 5.1021 0.1645 Terpenuhi
Normalitas galat (Shapiro-Wilk) 0.9381 0.0364 Tidak terpenuhi
Autokorelasi (Durbin-Watson) 1.7964 0.1772 Terpenuhi

Empat dari lima asumsi (linieritas, multikolinieritas, heteroskedastisitas, dan autokorelasi) terpenuhi. Hanya asumsi normalitas galat yang belum terpenuhi pada taraf 5% dengan \(p\)-value yang tidak terlalu jauh dari batas (0.0364). Dengan \(n\) = 38, penyimpangan ringan dari normalitas umumnya tidak banyak memengaruhi pendugaan koefisien, tetapi dapat memengaruhi ketepatan uji \(t\) dan \(F\) sehingga hasil pengujian hipotesis perlu dibaca dengan hati-hati. Pemeriksaan outlier pada Subbab 4.7 dilakukan untuk mengetahui apakah penyebabnya adalah pengamatan tertentu.

4.6 Pengujian Hipotesis

4.6.1 Uji Simultan (Uji F)

n <- nrow(dat); k <- 3
F_hit <- as.numeric(ringkasan$fstatistic[1])
F_tab <- qf(0.95, k, n - k - 1)
p_F   <- pf(F_hit, k, n - k - 1, lower.tail = FALSE)
data.frame(F_hitung = round(F_hit, 4), F_tabel = round(F_tab, 4),
           derajat_bebas = paste0(k, " dan ", n - k - 1), p_value = fp(p_F))
  1. Hipotesis: \(H_0: \beta_1=\beta_2=\beta_3=0\) lawan \(H_1\): minimal ada satu \(\beta_j \neq 0\).
  2. Taraf nyata: \(\alpha = 5\%\).
  3. Statistik uji: \(F_{hitung}\) = 90.2606.
  4. Kriteria penolakan: tolak \(H_0\) jika \(F_{hitung} > F_{0.05;3;34}\) = 2.8826 atau \(p\)-value < 0.05.
  5. Kesimpulan: \(F_{hitung}\) = 90.26 > 2.8826 dan \(p\)-value = 2.886e-16 < 0.05, maka \(H_0\) ditolak. Pada taraf nyata 5%, \(X_1\), \(X_2\), dan \(X_3\) secara simultan berpengaruh signifikan terhadap IPM, sehingga model layak digunakan.

4.6.2 Uji Parsial (Uji t)

t_tab <- qt(0.975, df.residual(model))
uji_t <- data.frame(
  Variabel   = c("X1 (Harapan lama sekolah)", "X2 (Pengguna internet)",
                 "X3 (Pengguna komputer)"),
  Koefisien  = round(koef[-1, 1], 5),
  t_hitung   = round(koef[-1, 3], 3),
  t_tabel    = round(t_tab, 3),
  p_value    = fp(koef[-1, 4]),
  Keputusan  = ifelse(abs(koef[-1, 3]) > t_tab & koef[-1, 4] < 0.05,
                      "Tolak H0 (signifikan)", "Gagal tolak H0"),
  row.names = NULL)
kable(uji_t, caption = "Tabel 4.6. Hasil uji parsial (uji t)")
Tabel 4.6. Hasil uji parsial (uji t)
Variabel Koefisien t_hitung t_tabel p_value Keputusan
X1 (Harapan lama sekolah) 1.67779 4.443 2.032 8.959e-05 Tolak H0 (signifikan)
X2 (Pengguna internet) 0.12832 5.215 2.032 9.027e-06 Tolak H0 (signifikan)
X3 (Pengguna komputer) 0.43613 3.452 2.032 0.0015 Tolak H0 (signifikan)

Untuk setiap \(j = 1,2,3\): \(H_0: \beta_j = 0\) lawan \(H_1: \beta_j \neq 0\), dengan \(\alpha = 5\%\) dan kriteria tolak \(H_0\) jika \(|t_{hitung}| > t_{0.025;34}\) = 2.032 atau \(p\)-value < 0.05.

  • \(X_1\) (harapan lama sekolah): \(t_{hitung}\) = 4.443, \(p\)-value = 8.959e-05. \(H_0\) ditolak, sehingga harapan lama sekolah berpengaruh signifikan dan positif terhadap IPM.
  • \(X_2\) (pengguna internet): \(t_{hitung}\) = 5.215, \(p\)-value = 9.027e-06. \(H_0\) ditolak, sehingga penggunaan internet berpengaruh signifikan dan positif terhadap IPM.
  • \(X_3\) (pengguna komputer): \(t_{hitung}\) = 3.452, \(p\)-value = 0.0015. \(H_0\) ditolak, sehingga penggunaan komputer berpengaruh signifikan dan positif terhadap IPM.

Seluruh variabel independen berpengaruh signifikan, sehingga ketentuan batasan masalah terpenuhi. Berdasarkan nilai \(|t|\), penggunaan internet (\(X_2\)) memberikan bukti pengaruh yang paling kuat, diikuti harapan lama sekolah (\(X_1\)) dan penggunaan komputer (\(X_3\)). Perlu diingat bahwa hubungan ini bersifat asosiasi dan bukan bukti sebab-akibat.

4.7 Evaluasi Model: Identifikasi dan Pengujian Outlier

4.7.1 Influence Plot

inf <- influencePlot(model, main = "Influence Plot",
                     sub = "Ukuran lingkaran sebanding dengan Cook's Distance")

inf$Provinsi <- dat$Provinsi[as.numeric(rownames(inf))]
kable(round(inf[, c("StudRes", "Hat", "CookD")], 5), caption = "Tabel 4.7. Pengamatan yang ditandai pada Influence Plot")
Tabel 4.7. Pengamatan yang ditandai pada Influence Plot
StudRes Hat CookD
11 0.21279 0.39179 0.00750
33 -3.29259 0.04570 0.10065
37 1.10998 0.41634 0.21822
38 -2.82564 0.32581 0.80023
inf$Provinsi
#> [1] "DKI JAKARTA"      "PAPUA BARAT"      "PAPUA TENGAH"     "PAPUA PEGUNUNGAN"

Gambar 4.5. Influence plot

diag_tab <- data.frame(No = seq_len(n), Provinsi = dat$Provinsi,
                       StudRes = rstudent(model), Hat = hatvalues(model),
                       CookD = cooks.distance(model))
batas_hat <- 2 * length(coef(model)) / n
batas_cook <- 4 / n
cat("Batas leverage 2p/n =", round(batas_hat, 4), "| Batas Cook's D 4/n =", round(batas_cook, 4), "\n")
#> Batas leverage 2p/n = 0.2105 | Batas Cook's D 4/n = 0.1053
top <- diag_tab[order(-abs(diag_tab$StudRes)), ][1:5, ]
kable(top, digits = 4, row.names = FALSE,
      caption = "Tabel 4.8. Lima pengamatan dengan |studentized residual| terbesar")
Tabel 4.8. Lima pengamatan dengan |studentized residual| terbesar
No Provinsi StudRes Hat CookD
33 PAPUA BARAT -3.2926 0.0457 0.1007
38 PAPUA PEGUNUNGAN -2.8256 0.3258 0.8002
19 NUSA TENGGARA TIMUR -1.8923 0.0557 0.0490
25 SULAWESI UTARA 1.4537 0.0442 0.0236
6 SUMATERA SELATAN 1.3845 0.0526 0.0259
lev <- diag_tab[diag_tab$Hat > batas_hat, ]
kable(lev, digits = 4, row.names = FALSE,
      caption = "Tabel 4.9. Pengamatan dengan leverage tinggi (h > 2p/n)")
Tabel 4.9. Pengamatan dengan leverage tinggi (h > 2p/n)
No Provinsi StudRes Hat CookD
11 DKI JAKARTA 0.2128 0.3918 0.0075
14 DI YOGYAKARTA -0.9347 0.2116 0.0588
34 PAPUA BARAT DAYA 0.7468 0.2997 0.0605
36 PAPUA SELATAN 1.2683 0.2961 0.1662
37 PAPUA TENGAH 1.1100 0.4163 0.2182
38 PAPUA PEGUNUNGAN -2.8256 0.3258 0.8002

Berdasarkan Influence Plot dan tabel diagnostik, diperoleh temuan berikut:

  • Residual ekstrem (pengamatan-\(Y\)): Papua Barat (observasi ke-33) memiliki studentized residual paling ekstrem (−3.29), disusul Papua Pegunungan (observasi ke-38) sebesar −2.83. Keduanya memiliki IPM jauh lebih rendah dari nilai dugaan model.
  • Leverage tinggi (pengamatan-\(X\)): enam provinsi melampaui batas \(2p/n = 0.2105\), yaitu DKI Jakarta, DI Yogyakarta, Papua Barat Daya, Papua Selatan, Papua Tengah, dan Papua Pegunungan. DKI Jakarta dan DI Yogyakarta ekstrem karena nilai \(X\) yang sangat tinggi, sedangkan provinsi Papua karena nilai \(X\) yang sangat rendah (termasuk \(X_2 = 0\)).
  • Pengaruh terhadap model (Cook’s Distance): Papua Pegunungan memiliki Cook’s D terbesar (≈ 0.80), jauh di atas batas \(4/n \approx 0.105\), karena memadukan residual besar dengan leverage tinggi. Papua Tengah (≈ 0.22) dan Papua Selatan (≈ 0.17) juga melewati batas, namun dengan nilai yang jauh lebih kecil.

Influence Plot hanya menandai pengamatan yang berpotensi menjadi outlier atau berpengaruh. Untuk memastikannya diperlukan uji formal, yaitu Uji Bonferroni.

4.7.2 Uji Bonferroni

ot <- outlierTest(model, cutoff = Inf, n.max = 3)
ot
#>     rstudent unadjusted p-value Bonferroni p
#> 33 -3.292589          0.0023723     0.090147
#> 38 -2.825645          0.0079491     0.302060
#> 19 -1.892308          0.0672510           NA
idx <- as.numeric(names(ot$rstudent))
tab_bon <- data.frame(Observasi = idx, Provinsi = dat$Provinsi[idx],
                      Rstudent = round(ot$rstudent, 4),
                      p_value_tak_terkoreksi = fp(ot$p),
                      p_Bonferroni = round(ot$bonf.p, 4), row.names = NULL)
kable(tab_bon, caption = "Tabel 4.10. Hasil uji Bonferroni (tiga residual terbesar)")
Tabel 4.10. Hasil uji Bonferroni (tiga residual terbesar)
Observasi Provinsi Rstudent p_value_tak_terkoreksi p_Bonferroni
33 PAPUA BARAT -3.2926 0.0024 0.0901
38 PAPUA PEGUNUNGAN -2.8256 0.0079 0.3021
19 NUSA TENGGARA TIMUR -1.8923 0.0673 2.5555
t_bon <- qt(1 - 0.05 / (2 * n), n - length(coef(model)) - 1)
cat("Nilai kritis Bonferroni t(0.05/(2n); n-p-1) =", round(t_bon, 4), "\n")
#> Nilai kritis Bonferroni t(0.05/(2n); n-p-1) = 3.5109

Pengujian dilakukan pada pengamatan dengan studentized deleted residual terbesar, yaitu Papua Barat (observasi ke-33):

  1. Hipotesis: \(H_0\): kasus ke-33 bukan outlier; \(H_1\): kasus ke-33 merupakan outlier.
  2. Taraf nyata: \(\alpha = 5\%\).
  3. Statistik uji: \(t_{33}\) = -3.2926, dengan \(p\)-value tak terkoreksi = 0.0024 dan \(p\)-value Bonferroni = \(n \times p\) = 0.0901.
  4. Kriteria penolakan: tolak \(H_0\) jika \(p_{Bonf}\) < \(\alpha\) (atau \(|t_i|\) ≥ 3.5109).
  5. Kesimpulan: karena \(p_{Bonf}\) = 0.0901 > 0.05 (dan \(|t_i|\) = 3.2926 < 3.5109), \(H_0\) gagal ditolak. Pada taraf nyata 5% Papua Barat tidak terbukti sebagai outlier setelah koreksi Bonferroni.

Perhatikan bahwa \(p\)-value tak terkoreksi (0.0024) tampak signifikan, tetapi nilai ini tidak boleh dipakai langsung karena 38 pengamatan diuji sekaligus. Koreksi Bonferroni memperhitungkan hal ini, sehingga kesimpulan yang tepat adalah mengikuti \(p_{Bonf}\). Papua Barat dan Papua Pegunungan adalah pengamatan yang menyimpang dan berpengaruh, tetapi belum cukup bukti secara formal untuk disebut outlier pada \(\alpha\) = 5%.

4.7.3 Analisis Sensitivitas

Untuk menilai seberapa besar pengaruh pengamatan yang ditandai terhadap kesimpulan, model diestimasi ulang tanpa pengamatan tersebut. Analisis ini hanya bersifat diagnostik; model utama tetap menggunakan seluruh data.

ringkas <- function(m, label) {
  s <- summary(m); cf <- coef(s)
  data.frame(Skenario = label, n = nobs(m),
             b0 = round(cf[1, 1], 3), b1 = round(cf[2, 1], 3),
             b2 = round(cf[3, 1], 4), b3 = round(cf[4, 1], 4),
             R2_adj = round(s$adj.r.squared, 4),
             `p maks. koefisien` = fp(max(cf[-1, 4])),
             `p Shapiro-Wilk` = fp(shapiro.test(resid(m))$p.value),
             check.names = FALSE)
}
m_tanpa_pb  <- update(model, data = subset(dat, Provinsi != "PAPUA BARAT"))
m_tanpa_pp  <- update(model, data = subset(dat, Provinsi != "PAPUA PEGUNUNGAN"))
m_tanpa_dua <- update(model, data = subset(dat, !Provinsi %in% c("PAPUA BARAT", "PAPUA PEGUNUNGAN")))

sens <- rbind(ringkas(model, "Model utama (semua data)"),
              ringkas(m_tanpa_pb,  "Tanpa Papua Barat"),
              ringkas(m_tanpa_pp,  "Tanpa Papua Pegunungan"),
              ringkas(m_tanpa_dua, "Tanpa keduanya"))
kable(sens, caption = "Tabel 4.11. Perbandingan model utama dan model tanpa pengamatan yang ditandai")
Tabel 4.11. Perbandingan model utama dan model tanpa pengamatan yang ditandai
Skenario n b0 b1 b2 b3 R2_adj p maks. koefisien p Shapiro-Wilk
Model utama (semua data) 38 39.962 1.678 0.1283 0.4361 0.8786 0.0015 0.0364
Tanpa Papua Barat 37 39.797 1.719 0.1367 0.3868 0.9055 0.0016 0.1706
Tanpa Papua Pegunungan 37 45.393 1.321 0.1238 0.4043 0.8428 0.0014 0.0058
Tanpa keduanya 36 45.503 1.345 0.1323 0.3513 0.8883 0.0010 0.0874

Hasil analisis sensitivitas menunjukkan bahwa:

  • Pada semua skenario, ketiga variabel independen tetap signifikan dan seluruh koefisien tetap positif, sehingga kesimpulan pengujian hipotesis tidak bergantung pada pengamatan yang ditandai.
  • Menghapus Papua Pegunungan paling banyak mengubah koefisien (misalnya \(b_1\) turun dari 1.678 menjadi sekitar 1.321), sesuai dengan Cook’s D-nya yang besar.
  • Menghapus Papua Barat membuat residual menjadi normal (\(p\)-value Shapiro-Wilk ≈ 0.17). Ini menunjukkan bahwa ketidaknormalan galat pada model utama terutama disebabkan oleh satu pengamatan tersebut.

Mengingat Papua Barat dan Papua Pegunungan merupakan data valid (bukan kesalahan pencatatan yang terbukti) dan tidak terbukti sebagai outlier menurut Uji Bonferroni, pengamatan tersebut dipertahankan pada model utama. Jika ingin menghapusnya, hal itu perlu didasarkan pada alasan substantif, misalnya verifikasi data sumber.


BAB V KESIMPULAN DAN SARAN

5.1 Kesimpulan

  1. Data. Data sekunder BPS tentang IPM, harapan lama sekolah, penggunaan internet, dan penggunaan komputer pada 38 provinsi di Indonesia dipilih karena memenuhi ketentuan (\(n \ge 35\), tiga variabel independen, semuanya signifikan). Statistik deskriptif menunjukkan IPM berkisar 53.42 (Papua Pegunungan) sampai 83.08 (DKI Jakarta) dengan rata-rata 72.39.
  2. Model. Model regresi yang terbentuk adalah \(\hat{Y} = 39.96175 + 1.67779X_1 + 0.12832X_2 + 0.43613X_3\). Ketiga variabel berhubungan positif dengan IPM, dan model menjelaskan sekitar 87.86% keragaman IPM (\(R^2_{adj}\) = 0.8786).
  3. Asumsi klasik. Asumsi linieritas, multikolinieritas (VIF maksimum 2.68), heteroskedastisitas (\(p\) = 0.1645), dan autokorelasi terpenuhi. Asumsi normalitas galat belum terpenuhi pada \(\alpha\) = 5% (Shapiro-Wilk \(p\) = 0.0364), dan penyebab utamanya adalah satu pengamatan, yaitu Papua Barat.
  4. Uji hipotesis. Uji F (\(F\) = 90.26; \(p\) = 2.886 × 10⁻¹⁶) menunjukkan ketiga variabel berpengaruh signifikan secara simultan. Uji t menunjukkan \(X_1\), \(X_2\), dan \(X_3\) masing-masing berpengaruh signifikan secara parsial (\(p\) < 0.05).
  5. Outlier. Influence Plot menandai Papua Barat (residual ekstrem) dan Papua Pegunungan (Cook’s D terbesar) sebagai pengamatan yang berpotensi berpengaruh. Uji Bonferroni pada Papua Barat memberikan \(p_{Bonf}\) = 0.0901 > 0.05, sehingga tidak terbukti sebagai outlier pada taraf nyata 5%. Analisis sensitivitas menunjukkan kesimpulan model tidak berubah tanpa pengamatan tersebut.

5.2 Saran

  1. Penulisan sintaks R perlu dilakukan dengan teliti karena kesalahan kecil dapat menyebabkan program error atau hasil yang keliru.
  2. Karena asumsi normalitas belum terpenuhi, hasil Uji t dan Uji F sebaiknya ditafsirkan dengan hati-hati. Penelitian lanjutan dapat menggunakan galat baku yang kokoh (robust standard error), regresi kokoh (robust regression), atau transformasi variabel.
  3. Nilai \(X_2 = 0\) pada empat provinsi Papua sebaiknya diverifikasi ke sumber data. Jika merupakan data tidak tersedia, penanganan sebagai missing value dapat dipertimbangkan.
  4. Untuk pengembangan model, dapat ditambahkan variabel lain yang relevan, seperti angka harapan hidup atau pengeluaran per kapita, serta periode waktu yang berbeda.
  5. Penulis menyadari laporan ini masih memiliki kekurangan, sehingga kritik dan saran yang membangun sangat diharapkan.

DAFTAR PUSTAKA

Badan Pusat Statistik. (2024a). [Metode Baru] Indeks Pembangunan Manusia menurut Provinsi. Diakses pada 9 Oktober 2026, dari https://www.bps.go.id/id/statistics-table/2/NDk0IzI=/-metode-baru--indeks-pembangunan-manusia-menurut-provinsi.html

Badan Pusat Statistik. (2024b). [Metode Baru] Harapan Lama Sekolah. Diakses pada 9 Oktober 2026, dari https://www.bps.go.id/id/statistics-table/2/NDE3IzI=/-metode-baru--harapan-lama-sekolah--tahun-.html

Badan Pusat Statistik. (2024c). Proporsi Individu yang Menggunakan Internet menurut Provinsi. Diakses pada 9 Oktober 2026, dari https://www.bps.go.id/id/statistics-table/2/MTIyNSMy/proporsi-individu-yang-menggunakan-internet-menurut-provinsi.html

Badan Pusat Statistik. (2024d). Persentase Penduduk yang Menggunakan Komputer menurut Provinsi dan Klasifikasi Daerah. Diakses pada 9 Oktober 2026, dari https://www.bps.go.id/id/statistics-table/2/MTY3MSMy/persentase-penduduk-yang-menggunakan-komputer-menurut-provinsi-dan-klasifikasi-daerah.html

Barus, F. M. (2023). Mendeteksi outlier pada data multivariat dengan metode Jarak Mahalanobis-Minimum Covariance Determinant (MMCD). Indonesian Journal of Multidisciplinary, 1(1), 1–10.

Firmansyah, A., & Tristie, G. A. (2021). Bagaimana peran tata kelola perusahaan dalam penghindaran pajak, pengungkapan risiko, efisiensi investasi? Indramayu: Penerbit ADAB.

Fox, J., & Weisberg, S. (2019). An R companion to applied regression (3rd ed.). Thousand Oaks, CA: Sage.

Hakim, L. (2016). Analisis regresi pada data outlier dengan metode MM-estimasi. Malang: Universitas Islam Negeri Maulana Malik Ibrahim.

Kartiningrum, E. D., Notobroto, H. B., Otok, B. W., Kumarijati, N. E., & Yuswatiningsih, E. (2022). Aplikasi regresi dan korelasi dalam analisis data hasil penelitian. E-Book Penerbit STIKes Majapahit.

Prasmono, A. S. P., & Ahdika, A. (2023). Analisis regresi berganda pada faktor-faktor yang mempengaruhi kinerja fisik preservasi jalan dan jembatan di Provinsi Sumatera Selatan. Emerging Statistics and Data Science Journal, 1(1), 47–56.

R Core Team. (2025). R: A language and environment for statistical computing. Vienna: R Foundation for Statistical Computing. https://www.R-project.org/

Rini, D. S. (2026). Modul praktikum analisis regresi dan korelasi. Bengkulu: Universitas Bengkulu.

Sabrina, F. A., Nandita, W. V., & Maharani, D. D. (2023). Uji asumsi klasik untuk menghindari pelanggaran asumsi klasik pada regresi linier Ordinary Least Squares (OLS) dalam ekonometrika. Jurnal Ilmiah Manajemen Ekonomi dan Akuntansi, 1(1), 195–203.

Suryono, M. S. (2021). Analisis regresi untuk penelitian. Semarang: Semarang University Press.

Wahyono, K. (2021). Analisis regresi sederhana dan berganda. Yogyakarta: UAD Press.

Zeileis, A., & Hothorn, T. (2002). Diagnostic checking in regression relationships. R News, 2(3), 7–10.


LAMPIRAN

Lampiran 1. Data Penelitian

kable(dat, row.names = TRUE, caption = "Data IPM dan variabel independen menurut provinsi")
Data IPM dan variabel independen menurut provinsi
Provinsi Y X1 X2 X3
1 ACEH 74.03 14.40 35.60 9.37
2 SUMATERA UTARA 74.02 13.50 41.38 9.95
3 SUMATERA BARAT 74.49 14.31 41.15 12.83
4 RIAU 74.79 13.44 44.97 10.30
5 JAMBI 73.43 13.34 42.68 10.00
6 SUMATERA SELATAN 72.30 12.65 38.14 8.79
7 BENGKULU 73.39 13.76 40.72 11.34
8 LAMPUNG 71.81 12.79 40.17 7.88
9 KEP. BANGKA BELITUNG 73.33 12.50 45.85 11.21
10 KEP. RIAU 77.97 13.28 65.02 18.34
11 DKI JAKARTA 83.08 13.80 73.46 23.47
12 JAWA BARAT 74.43 13.02 53.94 14.54
13 JAWA TENGAH 73.88 13.05 47.74 10.10
14 DI YOGYAKARTA 81.55 15.78 61.73 19.91
15 JAWA TIMUR 74.09 13.44 47.10 10.92
16 BANTEN 74.48 13.11 56.25 13.72
17 BALI 77.76 13.63 54.08 17.25
18 NUSA TENGGARA BARAT 70.93 13.99 39.16 10.29
19 NUSA TENGGARA TIMUR 67.39 13.34 26.29 11.13
20 KALIMANTAN BARAT 70.13 12.69 38.38 8.89
21 KALIMANTAN TENGAH 72.73 12.78 46.73 10.80
22 KALIMANTAN SELATAN 73.03 13.12 50.37 11.22
23 KALIMANTAN TIMUR 78.83 14.04 59.12 15.48
24 KALIMANTAN UTARA 73.02 13.31 54.30 11.81
25 SULAWESI UTARA 75.03 12.98 46.73 10.97
26 SULAWESI TENGAH 71.56 13.35 35.52 10.99
27 SULAWESI SELATAN 74.05 13.56 43.91 12.97
28 SULAWESI TENGGARA 73.48 13.72 41.92 12.29
29 GORONTALO 71.23 13.18 41.78 12.86
30 SULAWESI BARAT 68.20 12.90 31.26 10.02
31 MALUKU 71.57 14.10 33.89 11.67
32 MALUKU UTARA 71.03 13.76 29.13 9.61
33 PAPUA BARAT 67.02 13.21 43.46 10.09
34 PAPUA BARAT DAYA 68.63 13.89 0.00 9.71
35 PAPUA 73.00 13.94 21.70 13.61
36 PAPUA SELATAN 67.90 12.68 0.00 10.94
37 PAPUA TENGAH 59.75 9.64 0.00 4.81
38 PAPUA PEGUNUNGAN 53.42 9.98 0.00 1.16

Lampiran 2. Ringkasan Diagnostik Seluruh Pengamatan

kable(diag_tab, digits = 4, row.names = FALSE,
      caption = "Studentized residual, hat value, dan Cook's Distance seluruh provinsi")
Studentized residual, hat value, dan Cook’s Distance seluruh provinsi
No Provinsi StudRes Hat CookD
1 ACEH 0.7477 0.1390 0.0229
2 SUMATERA UTARA 1.0063 0.0514 0.0137
3 SUMATERA BARAT -0.2025 0.0622 0.0007
4 RIAU 1.1595 0.0519 0.0182
5 JAMBI 0.7077 0.0480 0.0064
6 SUMATERA SELATAN 1.3845 0.0526 0.0259
7 BENGKULU 0.0957 0.0398 0.0001
8 LAMPUNG 1.0470 0.0818 0.0244
9 KEP. BANGKA BELITUNG 0.9311 0.0600 0.0139
10 KEP. RIAU -0.3721 0.1729 0.0074
11 DKI JAKARTA 0.2128 0.3918 0.0075
12 JAWA BARAT -0.3655 0.0726 0.0027
13 JAWA TENGAH 0.8547 0.0613 0.0120
14 DI YOGYAKARTA -0.9347 0.2116 0.0588
15 JAWA TIMUR 0.4355 0.0470 0.0024
16 BANTEN -0.3868 0.0657 0.0027
17 BALI 0.2711 0.1040 0.0022
18 NUSA TENGGARA BARAT -1.1728 0.0713 0.0261
19 NUSA TENGGARA TIMUR -1.8923 0.0557 0.0490
20 KALIMANTAN BARAT 0.0422 0.0510 0.0000
21 KALIMANTAN TENGAH 0.3497 0.0511 0.0017
22 KALIMANTAN SELATAN -0.1702 0.0534 0.0004
23 KALIMANTAN TIMUR 0.5550 0.0627 0.0053
24 KALIMANTAN UTARA -0.7967 0.0622 0.0106
25 SULAWESI UTARA 1.4537 0.0442 0.0236
26 SULAWESI TENGAH -0.0844 0.0299 0.0001
27 SULAWESI SELATAN 0.0257 0.0299 0.0000
28 SULAWESI TENGGARA -0.1342 0.0323 0.0002
29 GORONTALO -1.0299 0.0338 0.0093
30 SULAWESI BARAT -1.0131 0.0334 0.0089
31 MALUKU -0.8540 0.0658 0.0129
32 MALUKU UTARA 0.0299 0.0702 0.0000
33 PAPUA BARAT -3.2926 0.0457 0.1007
34 PAPUA BARAT DAYA 0.7468 0.2997 0.0605
35 PAPUA 0.5580 0.1558 0.0147
36 PAPUA SELATAN 1.2683 0.2961 0.1662
37 PAPUA TENGAH 1.1100 0.4163 0.2182
38 PAPUA PEGUNUNGAN -2.8256 0.3258 0.8002

Lampiran 3. Informasi Sesi R

sessionInfo()
#> R version 4.6.1 (2026-06-24 ucrt)
#> Platform: x86_64-w64-mingw32/x64
#> Running under: Windows 11 x64 (build 26300)
#> 
#> Matrix products: default
#>   LAPACK version 3.12.1
#> 
#> locale:
#> [1] LC_COLLATE=English_United States.utf8 
#> [2] LC_CTYPE=English_United States.utf8   
#> [3] LC_MONETARY=English_United States.utf8
#> [4] LC_NUMERIC=C                          
#> [5] LC_TIME=English_United States.utf8    
#> 
#> time zone: Asia/Bangkok
#> tzcode source: internal
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#> [1] knitr_1.52    lmtest_0.9-40 zoo_1.9-1     car_3.1-5     carData_3.0-6
#> 
#> loaded via a namespace (and not attached):
#>  [1] vctrs_0.7.3        cli_3.6.6          rlang_1.3.0        xfun_0.62         
#>  [5] Formula_1.2-6      otel_0.3.0         jsonlite_2.0.0     glue_1.8.1        
#>  [9] htmltools_0.5.9    sass_0.4.10        scales_1.4.0       rmarkdown_2.32    
#> [13] grid_4.6.1         evaluate_1.0.5     jquerylib_0.1.4    abind_1.4-8       
#> [17] fastmap_1.2.0      yaml_2.3.12        lifecycle_1.0.5    compiler_4.6.1    
#> [21] RColorBrewer_1.1-3 rstudioapi_0.19.0  farver_2.1.2       lattice_0.22-9    
#> [25] digest_0.6.39      R6_2.6.1           bslib_0.12.0       tools_4.6.1       
#> [29] cachem_1.1.0