R - Regresi Berganda
Regresi berganda merupakan perpanjangan dari regresi linier menjadi hubungan antara lebih dari dua variabel. Dalam hubungan linier sederhana kita memiliki satu variabel prediktor dan satu variabel respon, tetapi dalam regresi berganda kita memiliki lebih dari satu variabel prediktor dan satu variabel respon.
Persamaan matematika umum untuk regresi berganda adalah -
y = a + b1x1 + b2x2 +...bnxn
Berikut ini adalah deskripsi parameter yang digunakan -
y adalah variabel respon.
a, b1, b2...bn adalah koefisien.
x1, x2, ...xn adalah variabel prediktor.
Kami membuat model regresi menggunakan lm()fungsi di R. Model menentukan nilai koefisien menggunakan data masukan. Selanjutnya kita dapat memprediksi nilai variabel respon untuk satu set variabel prediktor menggunakan koefisien ini.
lm () Fungsi
Fungsi ini menciptakan model hubungan antara prediktor dan variabel respon.
Sintaksis
Sintaks dasar untuk lm() fungsi dalam regresi berganda adalah -
lm(y ~ x1+x2+x3...,data)
Berikut ini adalah deskripsi parameter yang digunakan -
formula merupakan simbol yang mempresentasikan hubungan antara variabel respon dan variabel prediktor.
data adalah vektor tempat rumus akan diterapkan.
Contoh
Memasukan data
Pertimbangkan kumpulan data "mtcars" yang tersedia di lingkungan R. Ini memberikan perbandingan antara model mobil yang berbeda dalam hal jarak tempuh per galon (mpg), perpindahan silinder ("disp"), tenaga kuda ("hp"), berat mobil ("wt") dan beberapa parameter lainnya.
Tujuan dari model ini adalah untuk menetapkan hubungan antara "mpg" sebagai variabel respon dengan "disp", "hp" dan "wt" sebagai variabel prediktor. Kami membuat subset variabel ini dari kumpulan data mtcars untuk tujuan ini.
input <- mtcars[,c("mpg","disp","hp","wt")]
print(head(input))
Ketika kita menjalankan kode di atas, hasilnya adalah sebagai berikut -
mpg disp hp wt
Mazda RX4 21.0 160 110 2.620
Mazda RX4 Wag 21.0 160 110 2.875
Datsun 710 22.8 108 93 2.320
Hornet 4 Drive 21.4 258 110 3.215
Hornet Sportabout 18.7 360 175 3.440
Valiant 18.1 225 105 3.460
Buat Model Hubungan & dapatkan Koefisien
input <- mtcars[,c("mpg","disp","hp","wt")]
# Create the relationship model.
model <- lm(mpg~disp+hp+wt, data = input)
# Show the model.
print(model)
# Get the Intercept and coefficients as vector elements.
cat("# # # # The Coefficient Values # # # ","\n")
a <- coef(model)[1]
print(a)
Xdisp <- coef(model)[2]
Xhp <- coef(model)[3]
Xwt <- coef(model)[4]
print(Xdisp)
print(Xhp)
print(Xwt)
Ketika kita menjalankan kode di atas, hasilnya adalah sebagai berikut -
Call:
lm(formula = mpg ~ disp + hp + wt, data = input)
Coefficients:
(Intercept) disp hp wt
37.105505 -0.000937 -0.031157 -3.800891
# # # # The Coefficient Values # # #
(Intercept)
37.10551
disp
-0.0009370091
hp
-0.03115655
wt
-3.800891
Buat Persamaan untuk Model Regresi
Berdasarkan intersep dan nilai koefisien di atas, kami membuat persamaan matematika.
Y = a+Xdisp.x1+Xhp.x2+Xwt.x3
or
Y = 37.15+(-0.000937)*x1+(-0.0311)*x2+(-3.8008)*x3
Terapkan Persamaan untuk memprediksi Nilai Baru
Kita dapat menggunakan persamaan regresi yang dibuat di atas untuk memprediksi jarak tempuh ketika serangkaian nilai baru untuk perpindahan, tenaga kuda, dan berat disediakan.
Untuk mobil dengan disp = 221, hp = 102 dan wt = 2.91 jarak tempuh yang diprediksi adalah -
Y = 37.15+(-0.000937)*221+(-0.0311)*102+(-3.8008)*2.91 = 22.7104