BAB I. PENDAHULUAN

1.1 Latar Belakang

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.

1.2 Rumusan Masalah

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.

1.3 Tujuan Penelitian

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.

1.4 Manfaat Penelitian

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.

1.5 Batasan Masalah

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%.

BAB II. TINJAUAN PUSTAKA

2.1 Regresi Linier Berganda

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:

  • \(Y_i\) adalah variabel dependen pada pengamatan ke-\(i\).
  • \(\\beta_0\) adalah konstanta.
  • \(\\beta_1,\\beta_2,\\beta_3\) adalah koefisien regresi.
  • \(X_{1i},X_{2i},X_{3i}\) adalah variabel independen.
  • \(\\varepsilon_i\) adalah galat atau kesalahan pengamatan.

2.2 Outlier pada Regresi Linier

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.

2.3 Studentized Deleted Residual

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} \]

2.4 Leverage dan Cook’s Distance

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.

2.5 Uji Bonferroni

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.

BAB III. METODE PENELITIAN

3.1 Jenis dan Sumber Data

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.

3.2 Variabel Penelitian

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

3.3 Teknik Analisis Data

Analisis dilakukan menggunakan program R. Tahapan pengolahan data meliputi:

  1. Memasukkan data hasil panen, luas lahan, jumlah pupuk, dan curah hujan.
  2. Memeriksa struktur serta jumlah observasi.
  3. Menghitung statistik deskriptif setiap variabel.
  4. Membentuk model regresi linier berganda menggunakan fungsi lm().
  5. Mengamati nilai leverage, studentized residual, dan Cook’s distance melalui grafik pengaruh.
  6. Melakukan uji Bonferroni berdasarkan studentized deleted residual.
  7. Menginterpretasikan hasil dan menyusun kesimpulan.

BAB IV. HASIL DAN PEMBAHASAN

4.1 Memasukkan dan Memeriksa Data

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"
)
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.

4.2 Statistik Deskriptif

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"
)
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.

4.3 Visualisasi Awal Data

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.

4.4 Pembentukan Model Regresi Linier Berganda

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"
)
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"
)
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.

4.5 Deteksi Outlier Menggunakan Influence Plot

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"
)
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.

4.6 Uji Outlier Menggunakan 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"
)
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.

4.7 Pembahasan Hasil Deteksi Outlier

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.

BAB V. KESIMPULAN DAN SARAN

5.1 Kesimpulan

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.

5.2 Saran

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.

DAFTAR PUSTAKA

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.