Statistika merupakan ilmu yang berkaitan dengan proses pengumpulan, pengolahan, analisis, dan interpretasi data untuk memperoleh informasi yang dapat digunakan dalam pengambilan keputusan. Salah satu metode statistika yang banyak digunakan dalam analisis data adalah regresi linear. Regresi linear dapat digunakan untuk mengetahui hubungan antara variabel respons dengan satu atau lebih variabel prediktor serta melakukan prediksi berdasarkan hubungan yang terbentuk (James dkk., 2021).
Regresi linear berganda merupakan pengembangan dari regresi linear sederhana yang melibatkan lebih dari satu variabel prediktor. Metode ini memungkinkan peneliti untuk menganalisis hubungan beberapa variabel prediktor terhadap satu variabel respons secara simultan. Selain itu, regresi linear berganda dapat digunakan untuk mengestimasi koefisien regresi, menguji signifikansi hubungan antarvariabel, dan mengetahui kemampuan model dalam menjelaskan variasi variabel respons (Montgomery dkk., 2021).
Penelitian ini menggunakan dataset Iris yang diperkenalkan oleh Fisher (1936) dalam penelitian mengenai pengukuran beberapa karakteristik bunga untuk keperluan klasifikasi taksonomi. Dataset Iris terdiri dari pengukuran panjang sepal, lebar sepal, panjang petal, dan lebar petal dari tiga spesies bunga Iris. Dataset tersebut juga tersedia sebagai data bawaan dalam perangkat lunak R sehingga dapat digunakan untuk melakukan analisis statistika secara langsung (R Core Team, n.d.).
Berdasarkan hal tersebut, penelitian ini dilakukan untuk menerapkan analisis regresi linear berganda pada dataset Iris dengan panjang petal sebagai variabel respons serta panjang sepal, lebar sepal, dan lebar petal sebagai variabel prediktor. Analisis dilakukan melalui statistika deskriptif, analisis korelasi, estimasi model regresi, pengujian simultan dan parsial, serta koefisien determinasi. Hasil penelitian diharapkan dapat memberikan pemahaman mengenai penerapan regresi linear berganda dalam menganalisis hubungan antarvariabel numerik.
Berdasarkan latar belakang yang telah diuraikan, rumusan masalah dalam penelitian ini adalah sebagai berikut.
Tujuan dari penelitian ini adalah sebagai berikut.
Penelitian ini dibatasi pada penggunaan dataset Iris bawaan perangkat lunak R yang terdiri dari 150 pengamatan. Variabel respons yang digunakan adalah Petal.Length, sedangkan variabel prediktor terdiri dari Sepal.Length, Sepal.Width, dan Petal.Width. Metode analisis yang digunakan meliputi statistika deskriptif, analisis korelasi, dan regresi linear berganda.
Statistika deskriptif merupakan metode yang digunakan untuk menggambarkan karakteristik suatu data melalui ukuran pemusatan, penyebaran, dan penyajian visual. Ukuran pemusatan meliputi rata-rata dan median, sedangkan ukuran penyebaran meliputi varians dan simpangan baku. Penggunaan statistika deskriptif dapat membantu peneliti memahami karakteristik data sebelum melakukan analisis lebih lanjut (James dkk., 2021).
Korelasi merupakan ukuran yang digunakan untuk mengetahui arah dan kekuatan hubungan linear antara dua variabel. Koefisien korelasi Pearson memiliki nilai antara -1 dan 1. Nilai yang mendekati 1 menunjukkan hubungan linear positif, sedangkan nilai yang mendekati -1 menunjukkan hubungan linear negatif. Nilai yang mendekati 0 menunjukkan hubungan linear yang lemah (Montgomery dkk., 2021).
Regresi linear berganda merupakan metode statistika yang digunakan untuk menjelaskan hubungan antara satu variabel respons dengan dua atau lebih variabel prediktor. Metode ini juga dapat digunakan untuk melakukan estimasi dan prediksi terhadap variabel respons berdasarkan variabel prediktor yang digunakan dalam model (Montgomery dkk., 2021).
Model regresi linear berganda secara umum dinyatakan sebagai berikut:
\[ Y_i=\\beta_0+\\beta_1X_{1i}+\\beta_2X_{2i}+\\beta_3X_{3i}+\\varepsilon_i \]
Keterangan:
Estimasi parameter regresi dapat dilakukan menggunakan metode kuadrat terkecil atau Ordinary Least Squares (OLS), yaitu dengan meminimumkan jumlah kuadrat residual yang dihasilkan oleh model (Montgomery dkk., 2021).
Uji simultan atau uji F digunakan untuk mengetahui apakah variabel prediktor secara bersama-sama memberikan pengaruh yang signifikan terhadap variabel respons dalam model regresi.
Hipotesis yang digunakan adalah:
\[ H_0:\\beta_1=\\beta_2=\\beta_3=0 \]
\[ H_1:\\text{Minimal terdapat satu }\\beta_j\\neq0 \]
Pengujian dilakukan dengan membandingkan nilai p-value dengan taraf signifikansi \(\\alpha=0,05\). Apabila p-value lebih kecil dari 0,05, maka \(H_0\) ditolak sehingga terdapat bukti bahwa setidaknya satu koefisien prediktor tidak sama dengan nol (Montgomery dkk., 2021).
Uji parsial atau uji t digunakan untuk mengetahui signifikansi masing-masing koefisien regresi dengan menganggap variabel prediktor lainnya tetap berada dalam model.
Hipotesis yang digunakan adalah:
\[ H_0:\\beta_j=0 \]
\[ H_1:\\beta_j\\neq0 \]
Apabila p-value lebih kecil dari taraf signifikansi 0,05, maka \(H_0\) ditolak. Hal tersebut menunjukkan bahwa koefisien regresi variabel prediktor yang diuji signifikan secara parsial (Montgomery dkk., 2021).
Koefisien determinasi merupakan ukuran yang menunjukkan proporsi variasi variabel respons yang dapat dijelaskan oleh model regresi. Koefisien determinasi dinyatakan sebagai:
\[ R^2=1-\\frac{SSE}{SST} \]
Nilai \(R^2\) berada pada rentang 0 sampai 1 untuk model dengan intersep. Semakin besar nilai \(R^2\), semakin besar proporsi variasi respons yang dapat dijelaskan oleh model. Namun, nilai \(R^2\) yang tinggi tidak selalu menunjukkan bahwa model telah memenuhi seluruh asumsi regresi (James dkk., 2021).
Dataset Iris merupakan dataset yang digunakan untuk mempelajari karakteristik tiga spesies bunga Iris, yaitu Setosa, Versicolor, dan Virginica. Dataset ini terdiri dari 150 pengamatan dengan masing-masing spesies sebanyak 50 pengamatan. Variabel pengukuran meliputi panjang sepal, lebar sepal, panjang petal, dan lebar petal (Fisher, 1936; R Core Team, n.d.).
Dataset Iris tersedia sebagai dataset bawaan dalam R sehingga dapat digunakan secara langsung untuk melakukan analisis statistika tanpa melakukan proses impor data eksternal (R Core Team, n.d.).
Data yang digunakan dalam penelitian ini adalah dataset Iris yang tersedia pada perangkat lunak R. Dataset Iris terdiri dari 150 pengamatan bunga dari tiga spesies, yaitu Setosa, Versicolor, dan Virginica. Data tersebut mencakup empat variabel pengukuran numerik serta satu variabel kategori yang menunjukkan spesies bunga (R Core Team, n.d.).
Variabel yang digunakan dalam penelitian ini terdiri dari satu variabel respons dan tiga variabel prediktor.
| Variabel | Nama | Keterangan |
|---|---|---|
| Y | Petal.Length | Panjang petal |
| X1 | Sepal.Length | Panjang sepal |
| X2 | Sepal.Width | Lebar sepal |
| X3 | Petal.Width | Lebar petal |
Metode analisis yang digunakan dalam penelitian ini adalah statistika deskriptif, analisis korelasi, dan regresi linear berganda.
Statistika deskriptif digunakan untuk mengetahui karakteristik data melalui nilai minimum, maksimum, rata-rata, median, varians, dan simpangan baku. Analisis korelasi digunakan untuk mengetahui hubungan linear antarvariabel. Selanjutnya, regresi linear berganda digunakan untuk membentuk model hubungan antara variabel respons dengan variabel prediktor (Montgomery dkk., 2021).
Tahapan analisis yang dilakukan dalam penelitian ini adalah sebagai berikut.
Dataset Iris merupakan data bawaan R yang dapat dipanggil menggunakan
fungsi data(). Dataset ini digunakan sebagai objek
penelitian dalam analisis regresi linear berganda (R Core Team,
n.d.).
data("iris")
head(iris)
#> Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#> 1 5.1 3.5 1.4 0.2 setosa
#> 2 4.9 3.0 1.4 0.2 setosa
#> 3 4.7 3.2 1.3 0.2 setosa
#> 4 4.6 3.1 1.5 0.2 setosa
#> 5 5.0 3.6 1.4 0.2 setosa
#> 6 5.4 3.9 1.7 0.4 setosa
Variabel yang digunakan dalam analisis dipilih dari dataset Iris. Petal.Length digunakan sebagai variabel respons, sedangkan Sepal.Length, Sepal.Width, dan Petal.Width digunakan sebagai variabel prediktor.
data_analisis <- iris[, c(
"Petal.Length",
"Sepal.Length",
"Sepal.Width",
"Petal.Width"
)]
head(data_analisis)
#> Petal.Length Sepal.Length Sepal.Width Petal.Width
#> 1 1.4 5.1 3.5 0.2
#> 2 1.4 4.9 3.0 0.2
#> 3 1.3 4.7 3.2 0.2
#> 4 1.5 4.6 3.1 0.2
#> 5 1.4 5.0 3.6 0.2
#> 6 1.7 5.4 3.9 0.4
Pemeriksaan struktur data dilakukan untuk mengetahui jenis variabel dan jumlah pengamatan yang digunakan dalam penelitian.
str(data_analisis)
#> 'data.frame': 150 obs. of 4 variables:
#> $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
#> $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
#> $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
#> $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
dim(data_analisis)
#> [1] 150 4
names(data_analisis)
#> [1] "Petal.Length" "Sepal.Length" "Sepal.Width" "Petal.Width"
Statistika deskriptif digunakan untuk memberikan gambaran umum mengenai karakteristik data penelitian melalui ukuran pemusatan dan penyebaran (James dkk., 2021).
statistik <- data.frame(
Variabel = names(data_analisis),
Mean = sapply(data_analisis, mean),
Median = sapply(data_analisis, median),
Minimum = sapply(data_analisis, min),
Maksimum = sapply(data_analisis, max),
Varians = sapply(data_analisis, var),
SD = sapply(data_analisis, sd)
)
knitr::kable(
statistik,
digits = 3,
caption = "Tabel 4.1 Statistik Deskriptif"
)
| Variabel | Mean | Median | Minimum | Maksimum | Varians | SD | |
|---|---|---|---|---|---|---|---|
| Petal.Length | Petal.Length | 3.758 | 4.35 | 1.0 | 6.9 | 3.116 | 1.765 |
| Sepal.Length | Sepal.Length | 5.843 | 5.80 | 4.3 | 7.9 | 0.686 | 0.828 |
| Sepal.Width | Sepal.Width | 3.057 | 3.00 | 2.0 | 4.4 | 0.190 | 0.436 |
| Petal.Width | Petal.Width | 1.199 | 1.30 | 0.1 | 2.5 | 0.581 | 0.762 |
Berdasarkan hasil statistik deskriptif, karakteristik masing-masing variabel dapat diketahui melalui nilai rata-rata, median, minimum, maksimum, varians, dan simpangan baku.
Visualisasi data digunakan untuk membantu memahami distribusi dan pola hubungan antarvariabel sebelum melakukan pemodelan regresi (James dkk., 2021).
Histogram digunakan untuk melihat distribusi frekuensi data numerik.
hist(
data_analisis$Petal.Length,
main = "Histogram Panjang Petal",
xlab = "Panjang Petal",
ylab = "Frekuensi",
col = "lightblue",
border = "white"
)
Boxplot digunakan untuk menggambarkan median, kuartil, penyebaran data, serta kemungkinan pencilan.
boxplot(
Petal.Length ~ Species,
data = iris,
main = "Boxplot Panjang Petal Berdasarkan Spesies",
xlab = "Spesies",
ylab = "Panjang Petal",
col = c("lightblue", "lightgreen", "lightpink")
)
Scatterplot digunakan untuk mengamati pola hubungan antara dua variabel numerik.
plot(
data_analisis$Sepal.Length,
data_analisis$Petal.Length,
main = "Hubungan Panjang Sepal dan Petal",
xlab = "Sepal Length",
ylab = "Petal Length",
pch = 19,
col = "blue"
)
Analisis korelasi dilakukan untuk mengetahui arah dan kekuatan hubungan linear antarvariabel. Koefisien korelasi Pearson digunakan karena variabel yang dianalisis merupakan variabel numerik (Montgomery dkk., 2021).
korelasi <- cor(data_analisis)
knitr::kable(
korelasi,
digits = 3,
caption = "Tabel 4.2 Matriks Korelasi"
)
| Petal.Length | Sepal.Length | Sepal.Width | Petal.Width | |
|---|---|---|---|---|
| Petal.Length | 1.000 | 0.872 | -0.428 | 0.963 |
| Sepal.Length | 0.872 | 1.000 | -0.118 | 0.818 |
| Sepal.Width | -0.428 | -0.118 | 1.000 | -0.366 |
| Petal.Width | 0.963 | 0.818 | -0.366 | 1.000 |
Nilai korelasi positif menunjukkan hubungan searah, sedangkan nilai korelasi negatif menunjukkan hubungan berlawanan arah. Besarnya nilai korelasi menunjukkan kekuatan hubungan linear antarvariabel.
Model regresi linear berganda diestimasi menggunakan fungsi
lm() pada R. Fungsi tersebut digunakan untuk membentuk
model linear berdasarkan formula dan data yang ditentukan (R Core Team,
n.d.).
model <- lm(
Petal.Length ~ Sepal.Length + Sepal.Width + Petal.Width,
data = data_analisis
)
summary(model)
#>
#> Call:
#> lm(formula = Petal.Length ~ Sepal.Length + Sepal.Width + Petal.Width,
#> data = data_analisis)
#>
#> Residuals:
#> Min 1Q Median 3Q Max
#> -0.99333 -0.17656 -0.01004 0.18558 1.06909
#>
#> Coefficients:
#> Estimate Std. Error t value Pr(>|t|)
#> (Intercept) -0.26271 0.29741 -0.883 0.379
#> Sepal.Length 0.72914 0.05832 12.502 <2e-16 ***
#> Sepal.Width -0.64601 0.06850 -9.431 <2e-16 ***
#> Petal.Width 1.44679 0.06761 21.399 <2e-16 ***
#> ---
#> Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#>
#> Residual standard error: 0.319 on 146 degrees of freedom
#> Multiple R-squared: 0.968, Adjusted R-squared: 0.9674
#> F-statistic: 1473 on 3 and 146 DF, p-value: < 2.2e-16
koefisien <- coef(model)
tabel_koef <- data.frame(
Parameter = names(koefisien),
Estimasi = as.numeric(koefisien)
)
knitr::kable(
tabel_koef,
digits = 4,
caption = "Tabel 4.3 Estimasi Parameter Regresi"
)
| Parameter | Estimasi |
|---|---|
| (Intercept) | -0.2627 |
| Sepal.Length | 0.7291 |
| Sepal.Width | -0.6460 |
| Petal.Width | 1.4468 |
Persamaan model regresi hasil estimasi dapat dituliskan sebagai:
\[ \\widehat{Y}=\\hat{\\beta}_0+ \\hat{\\beta}_1X_1+ \\hat{\\beta}_2X_2+ \\hat{\\beta}_3X_3 \]
Koefisien regresi menunjukkan perubahan rata-rata variabel respons akibat perubahan satu satuan variabel prediktor, dengan variabel prediktor lainnya dianggap tetap (Montgomery dkk., 2021).
Uji simultan dilakukan untuk mengetahui signifikansi variabel prediktor secara bersama-sama terhadap variabel respons (Montgomery dkk., 2021).
hasil_f <- summary(model)$fstatistic
p_value_f <- pf(
hasil_f[1],
hasil_f[2],
hasil_f[3],
lower.tail = FALSE
)
p_value_f
#> value
#> 6.976868e-109
if (p_value_f < 0.05) {
cat("Berdasarkan hasil pengujian diperoleh p-value sebesar ",
signif(p_value_f, 4),
" yang lebih kecil dari 0,05 sehingga H0 ditolak. ",
"Dengan demikian, terdapat bukti bahwa variabel ",
"prediktor secara simultan berhubungan signifikan ",
"dengan variabel respons.")
} else {
cat("Berdasarkan hasil pengujian diperoleh p-value sebesar ",
signif(p_value_f, 4),
" yang lebih besar atau sama dengan 0,05 sehingga ",
"H0 tidak ditolak. Dengan demikian, belum terdapat ",
"bukti yang cukup bahwa variabel prediktor secara ",
"simultan berhubungan signifikan dengan variabel respons.")
}
Berdasarkan hasil pengujian diperoleh p-value sebesar 6.977e-109 yang lebih kecil dari 0,05 sehingga H0 ditolak. Dengan demikian, terdapat bukti bahwa variabel prediktor secara simultan berhubungan signifikan dengan variabel respons.
Uji parsial dilakukan untuk mengetahui signifikansi masing-masing koefisien regresi secara individual (Montgomery dkk., 2021).
hasil_t <- summary(model)$coefficients
knitr::kable(
hasil_t,
digits = 4,
caption = "Tabel 4.4 Hasil Uji Parsial"
)
| Estimate | Std. Error | t value | Pr(>|t|) | |
|---|---|---|---|---|
| (Intercept) | -0.2627 | 0.2974 | -0.8833 | 0.3785 |
| Sepal.Length | 0.7291 | 0.0583 | 12.5025 | 0.0000 |
| Sepal.Width | -0.6460 | 0.0685 | -9.4312 | 0.0000 |
| Petal.Width | 1.4468 | 0.0676 | 21.3987 | 0.0000 |
Koefisien dengan p-value kurang dari 0,05 menunjukkan bahwa variabel prediktor tersebut signifikan secara parsial pada taraf signifikansi 5%.
Koefisien determinasi digunakan untuk mengetahui proporsi variasi variabel respons yang dapat dijelaskan oleh model regresi (James dkk., 2021).
r2 <- summary(model)$r.squared
adjusted_r2 <- summary(model)$adj.r.squared
knitr::kable(
data.frame(
Ukuran = c("R-squared", "Adjusted R-squared"),
Nilai = c(r2, adjusted_r2)
),
digits = 4,
caption = "Tabel 4.5 Koefisien Determinasi"
)
| Ukuran | Nilai |
|---|---|
| R-squared | 0.9680 |
| Adjusted R-squared | 0.9674 |
Nilai R-squared menunjukkan proporsi variasi respons yang dapat dijelaskan oleh model, sedangkan Adjusted R-squared memperhitungkan jumlah prediktor yang digunakan.
Prediksi merupakan nilai respons yang dihasilkan oleh model regresi, sedangkan residual merupakan selisih antara nilai aktual dan nilai prediksi. Residual digunakan dalam evaluasi kecocokan model dan pemeriksaan asumsi regresi (Montgomery dkk., 2021).
prediksi <- predict(model)
residual <- residuals(model)
hasil_prediksi <- data.frame(
Aktual = data_analisis$Petal.Length,
Prediksi = prediksi,
Residual = residual
)
knitr::kable(
head(hasil_prediksi, 10),
digits = 3,
caption = "Tabel 4.6 Nilai Aktual, Prediksi, dan Residual"
)
| Aktual | Prediksi | Residual |
|---|---|---|
| 1.4 | 1.484 | -0.084 |
| 1.4 | 1.661 | -0.261 |
| 1.3 | 1.386 | -0.086 |
| 1.5 | 1.378 | 0.122 |
| 1.4 | 1.347 | 0.053 |
| 1.7 | 1.734 | -0.034 |
| 1.4 | 1.329 | 0.071 |
| 1.5 | 1.476 | 0.024 |
| 1.4 | 1.361 | 0.039 |
| 1.5 | 1.452 | 0.048 |
Grafik aktual dan prediksi digunakan untuk melihat kedekatan nilai hasil prediksi dengan nilai aktual. Titik yang berada semakin dekat dengan garis diagonal menunjukkan bahwa nilai prediksi semakin mendekati nilai aktual.
plot(
data_analisis$Petal.Length,
prediksi,
pch = 19,
col = "blue",
main = "Grafik Aktual dan Prediksi",
xlab = "Nilai Aktual",
ylab = "Nilai Prediksi"
)
abline(a = 0, b = 1, col = "red", lwd = 2)
Pemeriksaan diagnostik dilakukan untuk mengevaluasi kecocokan model regresi melalui pola residual dan grafik diagnostik. Pemeriksaan ini penting untuk mengetahui apakah terdapat indikasi penyimpangan asumsi model (Montgomery dkk., 2021).
par(mfrow = c(2, 2))
plot(model)
par(mfrow = c(1, 1))
Berdasarkan hasil analisis statistika yang telah dilakukan, karakteristik data bunga Iris dapat diketahui melalui statistika deskriptif dan visualisasi data. Analisis korelasi digunakan untuk mengetahui hubungan linear antarvariabel.
Model regresi linear berganda digunakan untuk menjelaskan hubungan panjang petal dengan panjang sepal, lebar sepal, dan lebar petal. Pengujian simultan dan parsial dilakukan untuk mengetahui signifikansi hubungan variabel prediktor terhadap variabel respons.
Kesimpulan akhir mengenai signifikansi model dan variabel prediktor didasarkan pada hasil pengujian serta nilai koefisien determinasi yang diperoleh dari analisis.
Penelitian selanjutnya dapat menggunakan data dengan variabel dan jumlah pengamatan yang lebih beragam serta menerapkan metode statistika lainnya untuk memperoleh hasil analisis yang lebih luas.
Fisher, R. A. (1936). The use of multiple measurements in taxonomic problems. Annals of Eugenics, 7(2), 179–188. https://doi.org/10.1111/j.1469-1809.1936.tb02137.x
James, G., Witten, D., Hastie, T., & Tibshirani, R. (2021). An introduction to statistical learning: With applications in R (2nd ed.). Springer. https://doi.org/10.1007/978-1-0716-1418-1
Montgomery, D. C., Peck, E. A., & Vining, G. G. (2021). Introduction to linear regression analysis (6th ed.). Wiley.
R Core Team. (n.d.). R: A language and environment for statistical computing. R Foundation for Statistical Computing. https://www.r-project.org/
R Core Team. (n.d.). Edgar Anderson’s iris data. R Documentation. https://stat.ethz.ch/R-manual/R-devel/library/datasets/html/iris.html
R Core Team. (n.d.). Fitting linear models. R Documentation. https://stat.ethz.ch/R-manual/R-devel/library/stats/html/lm.html
R Core Team. (n.d.). Summarizing linear model fits. R Documentation. https://stat.ethz.ch/R-manual/R-devel/library/stats/html/summary.lm.html