R - Çoklu Regresyon
Çoklu regresyon, ikiden fazla değişken arasındaki ilişkiye doğrusal regresyonun bir uzantısıdır. Basit doğrusal ilişkide bir yordayıcı ve bir yanıt değişkenine sahibiz, ancak çoklu regresyonda birden fazla yordayıcı değişkenimiz ve bir yanıt değişkenimiz var.
Çoklu regresyon için genel matematiksel denklem -
y = a + b1x1 + b2x2 +...bnxn
Kullanılan parametrelerin açıklaması aşağıdadır -
y yanıt değişkendir.
a, b1, b2...bn katsayılardır.
x1, x2, ...xn tahmin değişkenleridir.
Regresyon modelini kullanarak lm()R'deki fonksiyon. Model, giriş verilerini kullanarak katsayıların değerini belirler. Daha sonra, bu katsayıları kullanarak belirli bir yordayıcı değişken seti için yanıt değişkeninin değerini tahmin edebiliriz.
lm () İşlevi
Bu işlev, yordayıcı ve yanıt değişkeni arasındaki ilişki modelini oluşturur.
Sözdizimi
İçin temel sözdizimi lm() çoklu regresyondaki fonksiyon -
lm(y ~ x1+x2+x3...,data)
Kullanılan parametrelerin açıklaması aşağıdadır -
formula yanıt değişkeni ile yordayıcı değişkenler arasındaki ilişkiyi sunan bir semboldür.
data formülün uygulanacağı vektördür.
Misal
Giriş Verileri
R ortamında bulunan "mtcars" veri setini düşünün. Galon başına kilometre (mpg), silindir hacmi ("disp"), beygir gücü ("hp"), arabanın ağırlığı ("wt") ve daha fazla parametre açısından farklı araba modelleri arasında bir karşılaştırma sağlar.
Modelin amacı, bir yanıt değişkeni olarak "mpg" ile tahmin değişkenleri olarak "disp", "hp" ve "wt" arasındaki ilişkiyi kurmaktır. Bu amaçla mtcars veri setinden bu değişkenlerin bir alt kümesini oluşturuyoruz.
input <- mtcars[,c("mpg","disp","hp","wt")]
print(head(input))
Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -
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
İlişki Modeli oluşturun ve Katsayıları alın
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)
Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -
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
Regresyon Modeli İçin Denklem Oluşturun
Yukarıdaki kesişme ve katsayı değerlerine dayanarak matematiksel denklemi oluşturuyoruz.
Y = a+Xdisp.x1+Xhp.x2+Xwt.x3
or
Y = 37.15+(-0.000937)*x1+(-0.0311)*x2+(-3.8008)*x3
Yeni Değerleri tahmin etmek için Denklem uygula
Yer değiştirme, beygir gücü ve ağırlık için yeni bir değerler kümesi sağlandığında kilometreyi tahmin etmek için yukarıda oluşturulan regresyon denklemini kullanabiliriz.
Disp = 221, hp = 102 ve wt = 2.91 olan bir otomobil için tahmini kilometre -
Y = 37.15+(-0.000937)*221+(-0.0311)*102+(-3.8008)*2.91 = 22.7104