Analisis regresi linier berganda merupakan salah satu metode statistika yang digunakan untuk menjelaskan hubungan antara satu variabel dependen dengan dua atau lebih variabel independen. Metode ini dapat membantu peneliti mengetahui perubahan variabel respons berdasarkan perubahan beberapa variabel prediktor. Agar hasil pemodelan dapat diinterpretasikan dengan baik, data yang digunakan perlu diperiksa, salah satunya dengan mengidentifikasi keberadaan pencilan atau outlier.
Outlier merupakan pengamatan yang memiliki karakteristik berbeda atau nilai yang jauh dari sebagian besar pengamatan lainnya. Keberadaan outlier dapat memengaruhi estimasi koefisien, nilai statistik pengujian, serta kesimpulan yang diperoleh dari model regresi. Oleh karena itu, pemeriksaan outlier menjadi salah satu tahapan penting dalam analisis regresi linier berganda (Ghodang & Hantono, 2020).
Pendeteksian outlier dapat dilakukan melalui pendekatan grafis maupun pengujian statistik. Pendekatan grafis dapat menggunakan influence plot yang memperlihatkan nilai studentized residual, leverage, dan Cook’s distance. Selanjutnya, pengujian Bonferroni dapat digunakan untuk memeriksa pengamatan yang memiliki nilai studentized deleted residual ekstrem dengan mempertimbangkan pengujian terhadap sejumlah pengamatan. Pada laporan ini, analisis dilakukan terhadap data hasil panen, luas lahan, jumlah pupuk, dan curah hujan di Provinsi Jawa Timur tahun 2022.
Rumusan masalah dalam analisis ini adalah bagaimana membentuk model regresi linier berganda serta mengidentifikasi pengamatan yang terindikasi sebagai outlier melalui pendekatan grafis dan uji Bonferroni.
Tujuan analisis ini adalah membentuk model regresi linier berganda berdasarkan variabel yang digunakan, mengetahui karakteristik data melalui statistik deskriptif, serta mengidentifikasi outlier menggunakan influence plot dan uji Bonferroni.
Analisis ini diharapkan dapat menambah pemahaman mengenai penerapan regresi linier berganda dan prosedur pendeteksian outlier menggunakan program R. Selain itu, laporan ini dapat menjadi bahan pembelajaran dalam menginterpretasikan hasil analisis, baik melalui tabel maupun grafik.
Batasan masalah dalam laporan ini adalah menggunakan data kuantitatif dengan 35 observasi yang dapat dianalisis menggunakan regresi linier berganda. Variabel yang digunakan terdiri atas hasil panen sebagai variabel dependen, serta luas lahan, jumlah pupuk, dan curah hujan sebagai variabel independen. Pendeteksian outlier dilakukan menggunakan influence plot dan uji Bonferroni dengan taraf signifikansi 5%.
Regresi linier berganda merupakan metode untuk memodelkan hubungan antara satu variabel dependen dan beberapa variabel independen. Secara umum, model regresi linier berganda dengan tiga variabel independen dapat dituliskan sebagai berikut.
\[ Y_i = \\beta_0 + \\beta_1X_{1i} + \\beta_2X_{2i} + \\beta_3X_{3i} + \\varepsilon_i \]
Keterangan:
Outlier atau pencilan merupakan pengamatan yang memiliki karakteristik berbeda dari sebagian besar data lainnya. Pencilan dapat muncul karena kesalahan pencatatan, kesalahan memasukkan data, ketidaksesuaian anggota sampel dengan populasi, atau karena pengamatan tersebut memang berasal dari bagian ekstrem suatu distribusi (Dirgantara, 2021).
Outlier pada regresi dapat diperiksa melalui nilai residual, leverage, dan Cook’s distance. Studentized residual digunakan untuk melihat seberapa jauh nilai respons suatu pengamatan menyimpang dari pola model. Leverage menunjukkan seberapa ekstrem posisi pengamatan berdasarkan variabel independen, sedangkan Cook’s distance mengukur pengaruh suatu pengamatan terhadap hasil estimasi model.
Studentized deleted residual merupakan residual yang distandardisasi dengan menggunakan penduga simpangan baku ketika pengamatan ke-\(i\) dikeluarkan dari proses estimasi. Ukuran ini dapat digunakan untuk mengidentifikasi pengamatan yang memiliki penyimpangan besar terhadap model regresi.
Hipotesis pengujian untuk pengamatan ke-\(i\) adalah:
\[ H_0: \\text{Pengamatan ke-}i\\text{ bukan merupakan outlier} \]
\[ H_1: \\text{Pengamatan ke-}i\\text{ merupakan outlier} \]
Nilai leverage merupakan elemen diagonal dari matriks hat. Nilainya berada pada rentang nol sampai satu. Dalam pemeriksaan awal, suatu pengamatan dapat dicurigai memiliki leverage tinggi apabila memenuhi:
\[ h_{ii} > \\frac{2p}{n} \]
dengan \(p\) merupakan jumlah parameter model termasuk konstanta dan \(n\) merupakan jumlah pengamatan.
Sementara itu, Cook’s distance digunakan untuk melihat besarnya pengaruh setiap pengamatan terhadap model. Nilai yang relatif besar menunjukkan bahwa pengamatan tersebut berpotensi memberikan pengaruh kuat terhadap hasil estimasi regresi.
Uji Bonferroni merupakan penyesuaian nilai probabilitas untuk mempertimbangkan pengujian terhadap banyak pengamatan. Dalam analisis ini, nilai p-value dari studentized deleted residual disesuaikan menggunakan metode Bonferroni. Pengamatan dinyatakan terdeteksi sebagai outlier apabila nilai p-value Bonferroni lebih kecil dari taraf signifikansi yang digunakan, yaitu 0,05.
Data yang digunakan merupakan data kuantitatif dengan skala pengukuran rasio. Data terdiri atas 35 observasi dan mencakup hasil panen, luas lahan, jumlah pupuk, serta curah hujan pada tahun 2022. Data tersebut merupakan data sekunder yang pada laporan praktikum bersumber dari website resmi Badan Pusat Statistik (BPS) Provinsi Jawa Timur.
Variabel yang digunakan dalam analisis ini terdiri atas satu variabel dependen dan tiga variabel independen.
| Simbol | Variabel | Satuan | Peran |
|---|---|---|---|
| \(Y\) | Hasil panen | Kuintal | Dependen |
| \(X_1\) | Luas lahan | Hektar | Independen |
| \(X_2\) | Jumlah pupuk | Kg | Independen |
| \(X_3\) | Curah hujan | mm/bulan | Independen |
Analisis dilakukan menggunakan program R. Tahapan pengolahan data meliputi:
lm().Data dimasukkan secara langsung ke dalam dokumen agar proses Knit tidak bergantung pada lokasi file Excel di komputer. Dengan demikian, laporan dapat dijalankan kembali selama paket R Markdown dan knitr telah tersedia.
data_analisis <- data.frame(
Y = c(
127.1429715, 116.3587429, 119.8875592, 133.1416609, 116.5122615,
89.22628533, 149.5870725, 109.2922408, 117.4819046, 161.7696135,
121.6000322, 83.99850517, 103.5224113, 144.5325799, 92.06576462,
103.2477148, 113.1111528, 163.0096597, 84.24051652, 117.6264051,
122.4119374, 123.5169294, 126.9535132, 134.743295, 79.19833383,
185.103469, 106.7210192, 138.1368004, 193.5731986, 65.60817712,
128.8027506, 103.303353, 107.2489232, 179.1756386, 88.44799641
),
X1 = c(
50.2637, 52.6032, 46.0485, 47.957, 37.2837, 24.0312, 52.8968,
41.267, 53.9407, 59.3511, 49.8432, 52.596, 35.2669, 58.0193,
32.4925, 45.0495, 39.914, 50.2524, 48.7849, 34.5313, 43.9306,
36.0619, 43.723, 53.3263, 34.5863, 66.703, 45.0045, 56.7313,
72.4809, 33.4574, 45.256, 46.9808, 40.6897, 61.1099, 48.1032
),
X2 = c(
31.1404, 32.8952, 25.7291, 25.7933, 26.7215, 29.2656, 22.9401,
28.6472, 35.6465, 23.2987, 28.7535, 38.8175, 27.0402, 25.4609,
31.359, 29.9772, 34.2705, 22.05, 30.2802, 30.5293, 29.5458,
26.4306, 31.0186, 36.0152, 30.4216, 30.8197, 31.8688, 28.8655,
26.6436, 31.5705, 37.4221, 33.2608, 28.8371, 35.9237, 34.6047
),
X3 = c(
98.7904, 88.209, 83.5594, 98.9556, 98.2953, 108.621, 96.0664,
86.7882, 95.0701, 95.8091, 89.8758, 71.2276, 95.9198, 88.6513,
93.0244, 79.3962, 111.717, 107.437, 51.8571, 119.28, 101.93,
108.575, 111.947, 114.602, 76.1708, 130.292, 86.0471, 93.4752,
115.663, 66.2575, 128.328, 87.4169, 89.6761, 148.932, 68.356
)
)
knitr::kable(
head(data_analisis, 10),
digits = 4,
caption = "Sepuluh baris pertama data penelitian"
)
| Y | X1 | X2 | X3 |
|---|---|---|---|
| 127.1430 | 50.2637 | 31.1404 | 98.7904 |
| 116.3587 | 52.6032 | 32.8952 | 88.2090 |
| 119.8876 | 46.0485 | 25.7291 | 83.5594 |
| 133.1417 | 47.9570 | 25.7933 | 98.9556 |
| 116.5123 | 37.2837 | 26.7215 | 98.2953 |
| 89.2263 | 24.0312 | 29.2656 | 108.6210 |
| 149.5871 | 52.8968 | 22.9401 | 96.0664 |
| 109.2922 | 41.2670 | 28.6472 | 86.7882 |
| 117.4819 | 53.9407 | 35.6465 | 95.0701 |
| 161.7696 | 59.3511 | 23.2987 | 95.8091 |
cat("Jumlah observasi:", nrow(data_analisis), "\n")
#> Jumlah observasi: 35
cat("Jumlah variabel:", ncol(data_analisis), "\n")
#> Jumlah variabel: 4
cat("Jumlah data hilang:", sum(is.na(data_analisis)), "\n")
#> Jumlah data hilang: 0
str(data_analisis)
#> 'data.frame': 35 obs. of 4 variables:
#> $ Y : num 127 116 120 133 117 ...
#> $ X1: num 50.3 52.6 46 48 37.3 ...
#> $ X2: num 31.1 32.9 25.7 25.8 26.7 ...
#> $ X3: num 98.8 88.2 83.6 99 98.3 ...
Data terdiri atas 35 observasi dan empat variabel. Pemeriksaan data dilakukan untuk memastikan seluruh variabel tersimpan dalam bentuk numerik serta tidak terdapat data hilang yang dapat mengganggu proses pemodelan.
Statistik deskriptif digunakan untuk memberikan gambaran umum mengenai karakteristik setiap variabel melalui nilai minimum, kuartil pertama, median, rata-rata, kuartil ketiga, dan maksimum.
statistik_deskriptif <- data.frame(
Ukuran = c("Minimum", "Kuartil 1", "Median", "Rata-rata",
"Kuartil 3", "Maksimum"),
Y = c(min(data_analisis$Y), quantile(data_analisis$Y, 0.25),
median(data_analisis$Y), mean(data_analisis$Y),
quantile(data_analisis$Y, 0.75), max(data_analisis$Y)),
X1 = c(min(data_analisis$X1), quantile(data_analisis$X1, 0.25),
median(data_analisis$X1), mean(data_analisis$X1),
quantile(data_analisis$X1, 0.75), max(data_analisis$X1)),
X2 = c(min(data_analisis$X2), quantile(data_analisis$X2, 0.25),
median(data_analisis$X2), mean(data_analisis$X2),
quantile(data_analisis$X2, 0.75), max(data_analisis$X2)),
X3 = c(min(data_analisis$X3), quantile(data_analisis$X3, 0.25),
median(data_analisis$X3), mean(data_analisis$X3),
quantile(data_analisis$X3, 0.75), max(data_analisis$X3))
)
knitr::kable(
statistik_deskriptif,
digits = 2,
caption = "Hasil statistik deskriptif setiap variabel"
)
| Ukuran | Y | X1 | X2 | X3 |
|---|---|---|---|---|
| Minimum | 65.61 | 24.03 | 22.05 | 51.86 |
| Kuartil 1 | 103.41 | 40.30 | 26.88 | 87.10 |
| Median | 117.63 | 46.98 | 30.28 | 95.81 |
| Rata-rata | 121.44 | 46.87 | 30.11 | 96.75 |
| Kuartil 3 | 133.94 | 52.75 | 32.38 | 108.60 |
| Maksimum | 193.57 | 72.48 | 38.82 | 148.93 |
Berdasarkan tabel statistik deskriptif, variabel hasil panen (\(Y\)) memiliki nilai minimum dan maksimum yang menunjukkan rentang hasil panen pada seluruh observasi. Variabel luas lahan (\(X_1\)), jumlah pupuk (\(X_2\)), dan curah hujan (\(X_3\)) juga mempunyai rentang nilai yang berbeda sesuai karakteristik masing-masing. Perbandingan nilai rata-rata dan median dapat digunakan untuk memperoleh gambaran awal mengenai pemusatan data, sedangkan kuartil menunjukkan sebaran 50% data bagian tengah.
Scatterplot digunakan untuk melihat pola hubungan antara masing-masing variabel independen dengan hasil panen.
par(mfrow = c(1, 3))
plot(data_analisis$X1, data_analisis$Y,
main = "Hasil Panen dan Luas Lahan",
xlab = "Luas lahan (hektar)", ylab = "Hasil panen (kuintal)",
pch = 19, col = "steelblue")
plot(data_analisis$X2, data_analisis$Y,
main = "Hasil Panen dan Jumlah Pupuk",
xlab = "Jumlah pupuk (kg)", ylab = "Hasil panen (kuintal)",
pch = 19, col = "darkgreen")
plot(data_analisis$X3, data_analisis$Y,
main = "Hasil Panen dan Curah Hujan",
xlab = "Curah hujan (mm/bulan)", ylab = "Hasil panen (kuintal)",
pch = 19, col = "darkorange")
par(mfrow = c(1, 1))
Grafik tersebut memperlihatkan pola sebaran hubungan antara setiap variabel independen dengan hasil panen. Scatterplot digunakan sebagai gambaran awal dan bukan sebagai satu-satunya dasar untuk menentukan ada atau tidaknya outlier.
Model regresi linier berganda dibentuk dengan menjadikan hasil panen sebagai variabel dependen serta luas lahan, jumlah pupuk, dan curah hujan sebagai variabel independen.
model_regresi <- lm(Y ~ X1 + X2 + X3, data = data_analisis)
summary(model_regresi)
#>
#> Call:
#> lm(formula = Y ~ X1 + X2 + X3, data = data_analisis)
#>
#> Residuals:
#> Min 1Q Median 3Q Max
#> -4.2704 -0.8467 0.0270 0.9171 4.7305
#>
#> Coefficients:
#> Estimate Std. Error t value Pr(>|t|)
#> (Intercept) 28.15598 3.37786 8.335 0.00000000205 ***
#> X1 1.80287 0.03593 50.177 < 0.0000000000000002 ***
#> X2 -2.61524 0.08764 -29.842 < 0.0000000000000002 ***
#> X3 0.90463 0.01901 47.589 < 0.0000000000000002 ***
#> ---
#> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#>
#> Residual standard error: 2.087 on 31 degrees of freedom
#> Multiple R-squared: 0.9956, Adjusted R-squared: 0.9951
#> F-statistic: 2313 on 3 and 31 DF, p-value: < 0.00000000000000022
Koefisien model ditampilkan kembali dalam bentuk tabel berikut.
koefisien <- as.data.frame(summary(model_regresi)$coefficients)
koefisien$Parameter <- rownames(koefisien)
rownames(koefisien) <- NULL
koefisien <- koefisien[, c("Parameter", "Estimate", "Std. Error",
"t value", "Pr(>|t|)")]
knitr::kable(
koefisien,
digits = 5,
col.names = c("Parameter", "Estimasi", "Std. Error",
"t hitung", "p-value"),
caption = "Estimasi parameter regresi linier berganda"
)
| Parameter | Estimasi | Std. Error | t hitung | p-value |
|---|---|---|---|---|
| (Intercept) | 28.15598 | 3.37786 | 8.33546 | 0 |
| X1 | 1.80287 | 0.03593 | 50.17674 | 0 |
| X2 | -2.61524 | 0.08764 | -29.84183 | 0 |
| X3 | 0.90463 | 0.01901 | 47.58875 | 0 |
b <- coef(model_regresi)
cat("Persamaan regresi hasil estimasi adalah:\n\n")
Persamaan regresi hasil estimasi adalah:
cat("$$\\widehat{Y} = ",
round(b[1], 5),
ifelse(b[2] >= 0, " + ", " - "), abs(round(b[2], 5)), "X_1",
ifelse(b[3] >= 0, " + ", " - "), abs(round(b[3], 5)), "X_2",
ifelse(b[4] >= 0, " + ", " - "), abs(round(b[4], 5)), "X_3$$",
sep = "")
\[\widehat{Y} = 28.15598 + 1.80287X_1 - 2.61524X_2 + 0.90463X_3\]
Koefisien regresi menunjukkan perubahan nilai rata-rata hasil panen yang diperkirakan untuk setiap kenaikan satu satuan variabel independen, dengan asumsi variabel independen lainnya tetap. Koefisien positif menunjukkan hubungan searah dengan hasil panen, sedangkan koefisien negatif menunjukkan hubungan berlawanan arah. Interpretasi besaran koefisien tetap memperhatikan satuan masing-masing variabel.
Nilai koefisien determinasi dan uji simultan dapat dilihat melalui ringkasan berikut.
ringkasan_model <- summary(model_regresi)
fstat <- ringkasan_model$fstatistic
p_value_f <- pf(fstat[1], fstat[2], fstat[3], lower.tail = FALSE)
knitr::kable(
data.frame(
Ukuran = c("R-squared", "Adjusted R-squared",
"F-statistic", "p-value uji F"),
Nilai = c(ringkasan_model$r.squared,
ringkasan_model$adj.r.squared,
unname(fstat[1]), p_value_f)
),
digits = 6,
caption = "Ringkasan kecocokan model regresi"
)
| Ukuran | Nilai |
|---|---|
| R-squared | 0.995552 |
| Adjusted R-squared | 0.995121 |
| F-statistic | 2312.747850 |
| p-value uji F | 0.000000 |
Nilai \(R^2\) menunjukkan proporsi keragaman hasil panen yang dapat dijelaskan secara bersama-sama oleh luas lahan, jumlah pupuk, dan curah hujan dalam model. Uji F digunakan untuk mengevaluasi signifikansi variabel independen secara simultan. Apabila nilai p-value uji F lebih kecil dari 0,05, maka \(H_0\) ditolak sehingga terdapat bukti bahwa paling sedikit satu variabel independen memiliki hubungan linear dengan hasil panen.
Pendeteksian awal dilakukan dengan memperhatikan studentized residual, leverage, dan Cook’s distance. Pengamatan dengan nilai yang relatif besar pada ukuran tersebut perlu diperiksa lebih lanjut.
n <- nrow(data_analisis)
p <- length(coef(model_regresi))
nilai_pengaruh <- data.frame(
Pengamatan = seq_len(n),
Studentized_Residual = rstudent(model_regresi),
Leverage = hatvalues(model_regresi),
Cooks_Distance = cooks.distance(model_regresi)
)
batas_leverage <- 2 * p / n
knitr::kable(
nilai_pengaruh[order(-nilai_pengaruh$Cooks_Distance), ][1:10, ],
digits = 5,
caption = "Sepuluh pengamatan dengan Cook's distance terbesar"
)
| Pengamatan | Studentized_Residual | Leverage | Cooks_Distance | |
|---|---|---|---|---|
| 6 | 6 | -2.29897 | 0.21690 | 0.32153 |
| 18 | 18 | 2.70943 | 0.15711 | 0.28399 |
| 13 | 13 | -2.27997 | 0.08560 | 0.10715 |
| 12 | 12 | -1.05253 | 0.25040 | 0.09220 |
| 15 | 15 | 1.64457 | 0.08951 | 0.06301 |
| 35 | 35 | 1.15984 | 0.14118 | 0.05468 |
| 4 | 4 | -1.81357 | 0.06236 | 0.05093 |
| 8 | 8 | 1.57913 | 0.04536 | 0.02826 |
| 14 | 14 | -0.93065 | 0.11154 | 0.02730 |
| 27 | 27 | 1.46275 | 0.04403 | 0.02376 |
ukuran_bubble <- sqrt(pmax(nilai_pengaruh$Cooks_Distance, 0))
ukuran_bubble <- 1 + 7 * ukuran_bubble / max(ukuran_bubble)
plot(
nilai_pengaruh$Leverage,
nilai_pengaruh$Studentized_Residual,
cex = ukuran_bubble,
pch = 21,
bg = "skyblue",
xlab = "Leverage",
ylab = "Studentized residual",
main = "Influence Plot untuk Deteksi Outlier"
)
abline(h = c(-2, 2), lty = 2, col = "red")
abline(v = batas_leverage, lty = 2, col = "darkgreen")
text(
nilai_pengaruh$Leverage,
nilai_pengaruh$Studentized_Residual,
labels = nilai_pengaruh$Pengamatan,
pos = 3,
cex = 0.7
)
legend(
"topright",
legend = c("Batas residual ±2", "Batas leverage 2p/n"),
lty = 2,
col = c("red", "darkgreen"),
bty = "n"
)
Pada grafik, sumbu horizontal menunjukkan nilai leverage, sedangkan sumbu vertikal menunjukkan studentized residual. Ukuran lingkaran menggambarkan besarnya Cook’s distance. Pengamatan yang berada jauh dari kumpulan titik utama, mempunyai residual besar, atau memiliki leverage tinggi dapat menjadi perhatian. Grafik ini merupakan alat identifikasi awal sehingga keputusan akhir perlu mempertimbangkan hasil pengujian Bonferroni.
Pengujian Bonferroni dilakukan dengan menggunakan studentized deleted residual. Nilai probabilitas dua sisi dihitung berdasarkan distribusi t dengan derajat bebas residual, kemudian disesuaikan menggunakan metode Bonferroni untuk seluruh pengamatan.
residual_student <- rstudent(model_regresi)
df_residual <- df.residual(model_regresi)
p_unadjusted <- 2 * pt(
-abs(residual_student),
df = df_residual
)
p_bonferroni <- p.adjust(
p_unadjusted,
method = "bonferroni"
)
hasil_bonferroni <- data.frame(
Pengamatan = seq_len(n),
RStudent = residual_student,
P_Value = p_unadjusted,
Bonferroni_P = p_bonferroni
)
hasil_bonferroni <- hasil_bonferroni[
order(hasil_bonferroni$Bonferroni_P), ]
knitr::kable(
head(hasil_bonferroni, 10),
digits = 6,
col.names = c("Pengamatan", "RStudent",
"Unadjusted p-value", "Bonferroni p-value"),
caption = "Sepuluh hasil pengujian Bonferroni dengan p-value terkecil"
)
| Pengamatan | RStudent | Unadjusted p-value | Bonferroni p-value | |
|---|---|---|---|---|
| 18 | 18 | 2.709435 | 0.010879 | 0.380755 |
| 6 | 6 | -2.298968 | 0.028408 | 0.994291 |
| 1 | 1 | 0.210656 | 0.834534 | 1.000000 |
| 2 | 2 | -0.195690 | 0.846130 | 1.000000 |
| 3 | 3 | 0.200684 | 0.842257 | 1.000000 |
| 4 | 4 | -1.813568 | 0.079436 | 1.000000 |
| 5 | 5 | 1.050517 | 0.301601 | 1.000000 |
| 7 | 7 | -0.428219 | 0.671452 | 1.000000 |
| 8 | 8 | 1.579134 | 0.124456 | 1.000000 |
| 9 | 9 | -0.349141 | 0.729344 | 1.000000 |
alpha <- 0.05
outlier_bonf <- hasil_bonferroni$Pengamatan[
hasil_bonferroni$Bonferroni_P < alpha
]
if (length(outlier_bonf) > 0) {
cat("Pada taraf signifikansi 0,05, pengamatan yang teridentifikasi sebagai outlier berdasarkan uji Bonferroni adalah pengamatan ke-",
paste(outlier_bonf, collapse = ", "),
". Hal ini karena nilai p-value Bonferroni pada pengamatan tersebut lebih kecil dari 0,05.",
sep = "")
} else {
cat("Pada taraf signifikansi 0,05, tidak terdapat pengamatan yang teridentifikasi sebagai outlier berdasarkan uji Bonferroni karena seluruh nilai p-value Bonferroni lebih besar atau sama dengan 0,05.")
}
Pada taraf signifikansi 0,05, tidak terdapat pengamatan yang teridentifikasi sebagai outlier berdasarkan uji Bonferroni karena seluruh nilai p-value Bonferroni lebih besar atau sama dengan 0,05.
Hipotesis pengujian adalah \(H_0\): pengamatan bukan merupakan outlier dan \(H_1\): pengamatan merupakan outlier. Kriteria keputusan yang digunakan adalah menolak \(H_0\) apabila nilai p-value Bonferroni lebih kecil dari 0,05. Penyesuaian Bonferroni perlu diperhatikan karena pengujian dilakukan terhadap banyak pengamatan sekaligus.
Berdasarkan hasil analisis, pendeteksian outlier dilakukan melalui dua pendekatan yang saling melengkapi. Influence plot memberikan gambaran mengenai pengamatan yang memiliki residual, leverage, atau Cook’s distance relatif besar. Sementara itu, uji Bonferroni memberikan dasar keputusan statistik dengan mempertimbangkan penyesuaian pengujian berganda. Oleh karena itu, pengamatan yang terlihat menonjol pada grafik belum tentu dinyatakan sebagai outlier setelah dilakukan penyesuaian Bonferroni.
Hasil pengujian perlu ditafsirkan berdasarkan tabel nilai p-value Bonferroni yang dihasilkan ketika dokumen dijalankan. Pengamatan yang memenuhi kriteria dapat ditelusuri kembali ke sumber data untuk memastikan apakah nilai tersebut berasal dari kesalahan pencatatan atau memang menggambarkan kondisi yang ekstrem. Outlier tidak sebaiknya langsung dihapus tanpa pemeriksaan konteks dan alasan yang jelas.
Analisis ini menerapkan regresi linier berganda untuk mengkaji
hubungan luas lahan, jumlah pupuk, dan curah hujan dengan hasil panen
menggunakan 35 observasi. Model dibentuk menggunakan fungsi
lm() pada program R dan diperiksa melalui statistik
deskriptif serta visualisasi data. Pendeteksian outlier dilakukan dengan
memperhatikan studentized residual, leverage, dan
Cook’s distance pada influence plot, kemudian
dilanjutkan dengan uji Bonferroni. Kesimpulan mengenai pengamatan yang
terindikasi sebagai outlier ditentukan berdasarkan nilai
p-value Bonferroni yang dibandingkan dengan taraf signifikansi
0,05.
Analisis selanjutnya disarankan untuk memeriksa kembali sumber data pada pengamatan yang terindikasi sebagai outlier agar dapat diketahui penyebab munculnya nilai ekstrem. Selain itu, peneliti perlu mempertimbangkan konteks data sebelum memutuskan untuk mempertahankan atau mengeluarkan suatu pengamatan. Penggunaan metode diagnostik lain juga dapat dilakukan sebagai pembanding agar evaluasi model regresi menjadi lebih menyeluruh.
Ariani, M., Hadiyatno, D., & Anam, H. (2023). Metodologi penelitian: Langkah mudah menulis skripsi dan tesis. PT Rajagrafindo Persada.
Dirgantara, A. (2021). Pemodelan faktor-faktor yang mempengaruhi kemiskinan di Jawa Tengah menggunakan perbandingan regresi robust least trimmed square (LTS)-estimation dan scale (S)-estimation. Universitas Muhammadiyah Semarang.
Ghodang, H., & Hantono. (2020). Metodologi penelitian kuantitatif (Konsep dasar dan aplikasi analisis regresi dan jalur dengan SPSS). PT Penerbit Mitra Grup.
Prayogo, D., & Sukim, S. (2021). Determinan daya beli masyarakat Indonesia selama pandemi Covid-19 tahun 2020. Seminar Nasional Official Statistics, 2021(1), 631–640.
Rini, D. S. (2026). Modul praktikum pengantar analisis regresi. Universitas Bengkulu.
Sulianta, F. (2023). Basic data mining from A to Z. Elex Media Komputindo.
Catatan pelaksanaan: Seluruh data telah dimasukkan
langsung ke dalam dokumen ini sehingga tidak perlu mengubah alamat file
atau mengimpor Excel. Buka file .Rmd di RStudio, pastikan
paket rmarkdown dan knitr tersedia, kemudian
tekan Knit untuk menghasilkan HTML.