R - Lojistik Regresyon

Lojistik Regresyon, yanıt değişkeninin (bağımlı değişken) Doğru / Yanlış veya 0/1 gibi kategorik değerlere sahip olduğu bir regresyon modelidir. Aslında, bir ikili cevabın olasılığını, tahmin değişkenleriyle ilişkilendiren matematiksel denkleme dayalı olarak yanıt değişkeninin değeri olarak ölçer.

Lojistik regresyon için genel matematiksel denklem -

y = 1/(1+e^-(a+b1x1+b2x2+b3x3+...))

Kullanılan parametrelerin açıklaması aşağıdadır -

  • y yanıt değişkendir.

  • x yordayıcı değişkendir.

  • a ve b sayısal sabitler olan katsayılardır.

Regresyon modelini oluşturmak için kullanılan işlev, glm() işlevi.

Sözdizimi

İçin temel sözdizimi glm() lojistik regresyondaki fonksiyon -

glm(formula,data,family)

Kullanılan parametrelerin açıklaması aşağıdadır -

  • formula değişkenler arasındaki ilişkiyi gösteren semboldür.

  • data bu değişkenlerin değerlerini veren veri setidir.

  • familymodelin ayrıntılarını belirtmek için R nesnesidir. Lojistik regresyon için değeri iki terimli.

Misal

Dahili veri seti "mtcars", çeşitli motor özellikleriyle bir otomobilin farklı modellerini tanımlar. "Mtcars" veri setinde, iletim modu (otomatik veya manuel), ikili bir değer (0 veya 1) olan am sütunu ile tanımlanır. "Am" sütunları ve diğer 3 sütun - hp, wt ve cyl arasında lojistik regresyon modeli oluşturabiliriz.

# Select some columns form mtcars.
input <- mtcars[,c("am","cyl","hp","wt")]

print(head(input))

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

am   cyl  hp    wt
Mazda RX4          1   6    110   2.620
Mazda RX4 Wag      1   6    110   2.875
Datsun 710         1   4     93   2.320
Hornet 4 Drive     0   6    110   3.215
Hornet Sportabout  0   8    175   3.440
Valiant            0   6    105   3.460

Regresyon Modeli Oluşturun

Kullanıyoruz glm() regresyon modelini oluşturma ve analiz için özetini alma işlevi.

input <- mtcars[,c("am","cyl","hp","wt")]

am.data = glm(formula = am ~ cyl + hp + wt, data = input, family = binomial)

print(summary(am.data))

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

Call:
glm(formula = am ~ cyl + hp + wt, family = binomial, data = input)

Deviance Residuals: 
     Min        1Q      Median        3Q       Max  
-2.17272     -0.14907  -0.01464     0.14116   1.27641  

Coefficients:
            Estimate Std. Error z value Pr(>|z|)  
(Intercept) 19.70288    8.11637   2.428   0.0152 *
cyl          0.48760    1.07162   0.455   0.6491  
hp           0.03259    0.01886   1.728   0.0840 .
wt          -9.14947    4.15332  -2.203   0.0276 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 43.2297  on 31  degrees of freedom
Residual deviance:  9.8415  on 28  degrees of freedom
AIC: 17.841

Number of Fisher Scoring iterations: 8

Sonuç

Özet olarak, son sütundaki p değeri, "cyl" ve "hp" değişkenleri için 0,05'ten fazla olduğundan, "am" değişkeninin değerine katkıda bulunmada bunların önemsiz olduğunu düşünüyoruz. Bu regresyon modelinde sadece ağırlık (wt) "am" değerini etkiler.