##ÇOKLU REGRESYON
psoda: orta boy soda fiyatı, 1. dalga
pfries: küçük patates kızartmasının fiyatı, 1. dalga
pentree: fiyat başlangıç yemeği (burger veya tavuk), 1. dalga
ücret: başlangıç ücreti, 1. dalga
nmgrs: yönetici sayısı, 1. dalga
nregs: kayıt sayısı, 1. dalga
hrsopen: çalışma saatleri, 1. dalga
emp: çalışan sayısı, 1. dalga
psoda2: orta sodalı fiyatı, 2. dalga
pfries2: küçük patates kızartmasının fiyatı, 2. dalga
pentree2: fiyat başlangıç, 2. dalga
ücretli2: başlangıç ücreti, 2. dalga
nmgrs2: yönetici sayısı, 2. dalga
nregs2: kayıt sayısı, 2. dalga
hrsopen2: çalışma saatleri, 2. dalga
emp2: çalışan sayısı, 2. dalga
compow: =1 eğer şirkete aitse
zincir: BK = 1, KFC = 2, Roy Rogers = 3, Wendy’s = 4
yoğunluk: nüfus yoğunluğu, kasaba
crmrte: suç oranı, kasaba
durum: NJ = 1, PA = 2
prpblck: siyah orantı, posta kodu
prppov: yoksulluk oranı, posta kodu
prpncar: oran araba yok, posta kodu
hseval: ortalama konut değeri, posta kodu
nstores: mağaza sayısı, posta kodu
gelir: ortalama aile geliri, posta kodu
ilçe: ilçe etiketi
lpsoda: günlük(psoda)
lpfries: günlük(pfries)
lhseval: log(hseval)
lincome: log(gelir)
yoğunluk: log(yoğunluk)
NJ: New Jersey için =1
BK: =1 eğer Burger King ise
KFC: =1 eğer Kentucky Fried Chicken
RR: =1 eğer Roy Rogers
CEVAPLAR
## psoda pfries pentree wagest nmgrs nregs hrsopen emp psoda2 pfries2 pentree2
## 1 1.12 1.06 1.02 4.25 3 5 16.0 27.5 1.11 1.11 1.05
## 2 1.06 0.91 0.95 4.75 3 3 16.5 21.5 1.05 0.89 0.95
## 3 1.06 0.91 0.98 4.25 3 5 18.0 30.0 1.05 0.94 0.98
## 4 1.12 1.02 1.06 5.00 4 5 16.0 27.5 1.15 1.05 1.05
## 5 1.12 NA 0.49 5.00 3 3 16.0 5.0 1.04 1.01 0.58
## 6 1.06 0.95 1.01 4.25 4 4 15.0 17.5 1.05 0.94 1.00
## wagest2 nmgrs2 nregs2 hrsopen2 emp2 compown chain density crmrte state
## 1 5.05 5 5 15.0 27.0 1 3 4030 0.0528866 1
## 2 5.05 4 3 17.5 24.5 0 1 4030 0.0528866 1
## 3 5.05 4 5 17.5 25.0 0 1 11400 0.0360003 1
## 4 5.05 4 5 16.0 NA 0 3 8345 0.0484232 1
## 5 5.05 3 3 16.0 12.0 0 1 720 0.0615890 1
## 6 5.05 3 4 15.0 28.0 0 1 4424 0.0334823 1
## prpblck prppov prpncar hseval nstores income county lpsoda
## 1 0.1711542 0.0365789 0.0788428 148300 3 44534 18 0.11332869
## 2 0.1711542 0.0365789 0.0788428 148300 3 44534 18 0.05826885
## 3 0.0473602 0.0879072 0.2694298 169200 3 41164 12 0.05826885
## 4 0.0528394 0.0591227 0.1366903 171600 3 50366 10 0.11332869
## 5 0.0344800 0.0254145 0.0738020 249100 1 72287 10 0.11332869
## 6 0.0591327 0.0835001 0.1151341 148000 2 44515 18 0.05826885
## lpfries lhseval lincome ldensity NJ BK KFC RR
## 1 0.05826885 11.90699 10.70401 8.301521 1 0 0 1
## 2 -0.09431065 11.90699 10.70401 8.301521 1 1 0 0
## 3 -0.09431065 12.03884 10.62532 9.341369 1 1 0 0
## 4 0.01980261 12.05292 10.82707 9.029418 1 0 0 1
## 5 NA 12.42561 11.18840 6.579251 1 1 0 0
## 6 -0.05129331 11.90497 10.70358 8.394799 1 1 0 0
Gördüğünüz gibi veri setinde bazı değişkenler için bazı gözlemler NA değerine sahip. NA (not available) o gözlem için mevcut değil anlamına geliyor. Örneğin pfries (price of small fries, küçük kızartmanın fiyatı) değişkeninin beşinci gözlemi veri setinde bulunan beşinci restoranının küçük kızartma fiyatını bilmediğimiz anlamı taşıyor. Mevcut olmayan gözlemler analizlerde her zaman sorunlar çıkarır. Bu mevcut olmayan değişkenlerle nasıl başa çıkacağımızı yavaş yavaş öğrenmemiz gerekir.
## [1] NA
## [1] NA
## [1] NA
## [1] NA
Bildiğimiz mean ve sd fonksiyonlarını kullanarak ortama ve standart sapma değerlerini bulamadık. Çıkan NA sonucu bize bu değişkenlerin içinde bazı gözlemlerin mevcut olmadığını gösteriyor olabilir. discrim veri setinde 410 gözlem olduğundan her bir gözlemi kontrol edemiyorz ve bu değişkenlerin içinde kaç tane gözlemin mevcut olmadığını çıkaramıyoruz. R bize bu konuda is.na fonksiyonu ile yardımcı oluyor. is.na aslında sorduğumuz ingilizce bir soru ve is na? derken R’a mevcut olmayan gözlem var mı diye soru soruyoruz. R’da bize her bir gözlem için o gözlemin değeri olup olmadığını TRUE (doğru) ve FALSE (yanlış) olarak geri veriyor.
## [1] 1
## [1] 1
Gördüğünüz gibi hem prbblck hem income değişkenlerinin birer gözlemi boş değere sahip. Bu yüzden mean ve sd fonksiyonlarının NA gözlemlerinine sahip olduğunu söylememiz lazım.
## [1] 0.1134864
## [1] 0.1824165
## [1] 47053.78
## [1] 13179.29
fonksiyonun içine yazdığımız na.rm (na remove, çıkar) öevcut olmayan gözlemleri hesaplamadan çıkarmamızı söyler. prbblck değişkeninin ortalaması 0.11, standart sapması 0.18, income değişkeninin ortalaması 47053, standart sapması 13179 olacaktır.
## Loading required package: kableExtra
## Variable NotNA CountNA Mean Sd
## 1 psoda 402 8 1 0.089
## 2 pfries 393 17 0.92 0.11
## 3 pentree 398 12 1.3 0.64
## 4 wagest 390 20 4.6 0.35
## 5 nmgrs 404 6 3.4 1
## 6 nregs 388 22 3.6 1.2
## 7 hrsopen 410 0 14 2.8
## 8 emp 404 6 18 9.4
## 9 psoda2 388 22 1 0.094
## 10 pfries2 382 28 0.94 0.11
## 11 pentree2 386 24 1.4 0.65
## 12 wagest2 389 21 5 0.25
## 13 nmgrs2 404 6 3.5 1.1
## 14 nregs2 388 22 3.6 1.2
## 15 hrsopen2 399 11 14 2.8
## 16 emp2 397 13 18 8.6
## 17 compown 410 0 0.34 0.48
## 18 chain 410 0 2.1 1.1
## 19 density 409 1 4562 5132
## 20 crmrte 409 1 0.053 0.047
## 21 state 410 0 1.2 0.39
## 22 prpblck 409 1 0.11 0.18
## 23 prppov 409 1 0.071 0.067
## 24 prpncar 409 1 0.11 0.12
## 25 hseval 409 1 147399 56070
## 26 nstores 410 0 3.1 1.8
## 27 income 409 1 47054 13179
## 28 county 410 0 14 8
## 29 lpsoda 402 8 0.04 0.085
## 30 lpfries 393 17 -0.088 0.12
## 31 lhseval 409 1 12 0.39
## 32 lincome 409 1 11 0.28
## 33 ldensity 409 1 8 1
## 34 NJ 410 0 0.81 0.39
## 35 BK 410 0 0.42 0.49
## 36 KFC 410 0 0.2 0.4
## 37 RR 410 0 0.24 0.43
##
## Call:
## lm(formula = psoda ~ prpblck + income, data = discrim)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.29401 -0.05242 0.00333 0.04231 0.44322
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 9.563e-01 1.899e-02 50.354 < 2e-16 ***
## prpblck 1.150e-01 2.600e-02 4.423 1.26e-05 ***
## income 1.603e-06 3.618e-07 4.430 1.22e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.08611 on 398 degrees of freedom
## (9 observations deleted due to missingness)
## Multiple R-squared: 0.06422, Adjusted R-squared: 0.05952
## F-statistic: 13.66 on 2 and 398 DF, p-value: 1.835e-06
Örnek boyutu 399 gözlemdir (398 serbestlik derecesi ve 9 eksik gözlem ile gösterilir) ve ayarlanmış R^3 0.595’tir. prpblck katsayısı, her şey eşit olduğunda, prpblck %10 artarsa, soda fiyatının ekonomik olarak önemli olmayan derecede yaklaşık 1,2 sent artacağını gösterir.
##
## Call:
## lm(formula = psoda ~ prpblck, data = discrim)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.30884 -0.05963 0.01135 0.03206 0.44840
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.03740 0.00519 199.87 < 2e-16 ***
## prpblck 0.06493 0.02396 2.71 0.00702 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.0881 on 399 degrees of freedom
## (9 observations deleted due to missingness)
## Multiple R-squared: 0.01808, Adjusted R-squared: 0.01561
## F-statistic: 7.345 on 1 and 399 DF, p-value: 0.007015
Basit regresyon ile prpblack üzerindeki katsayının tahmini 0.065’tir. Bu, önceki tahminden daha düşüktür ve bu nedenle, gelir hariç tutulduğunda ayrımcılık etkisinin azaldığını gösterir.
##
## Call:
## lm(formula = log(psoda) ~ prpblck + log(income), data = discrim)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.33563 -0.04695 0.00658 0.04334 0.35413
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.79377 0.17943 -4.424 1.25e-05 ***
## prpblck 0.12158 0.02575 4.722 3.24e-06 ***
## log(income) 0.07651 0.01660 4.610 5.43e-06 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.0821 on 398 degrees of freedom
## (9 observations deleted due to missingness)
## Multiple R-squared: 0.06809, Adjusted R-squared: 0.06341
## F-statistic: 14.54 on 2 and 398 DF, p-value: 8.039e-07
## [1] "2.44 yüzdelik artış"
“Prpblck” yüzde 20 artarsa, psoda tahmini olarak %2,44 artacaktır.
logdiscrimregprpov <- lm(log(psoda)~prpblck+log(income)+prppov, data = discrim)
summary(logdiscrimregprpov)
##
## Call:
## lm(formula = log(psoda) ~ prpblck + log(income) + prppov, data = discrim)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.32218 -0.04648 0.00651 0.04272 0.35622
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -1.46333 0.29371 -4.982 9.4e-07 ***
## prpblck 0.07281 0.03068 2.373 0.0181 *
## log(income) 0.13696 0.02676 5.119 4.8e-07 ***
## prppov 0.38036 0.13279 2.864 0.0044 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.08137 on 397 degrees of freedom
## (9 observations deleted due to missingness)
## Multiple R-squared: 0.08696, Adjusted R-squared: 0.08006
## F-statistic: 12.6 on 3 and 397 DF, p-value: 6.917e-08
prppov eklemek, prpblck katsayısının 0,0738’e düşmesine neden olur.
## [1] -0.838467
Korelasyon yaklaşık olarak -0.838’dir. Bu mantıklı, çünkü gelirdeki düşüşlerin daha yüksek yoksulluk oranlarıyla sonuçlanması beklenebilir.
F TESTİ
model_unrestricted <- lm(pentree ~ prpblck + income + hrsopen , data = discrim)
summary(model_unrestricted)
##
## Call:
## lm(formula = pentree ~ prpblck + income + hrsopen, data = discrim)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.09998 -0.30246 -0.06881 0.20769 2.36509
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.319e+00 1.721e-01 19.277 < 2e-16 ***
## prpblck 4.272e-01 1.542e-01 2.771 0.00585 **
## income -7.568e-07 2.164e-06 -0.350 0.72677
## hrsopen -1.398e-01 9.385e-03 -14.892 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.5091 on 393 degrees of freedom
## (13 observations deleted due to missingness)
## Multiple R-squared: 0.379, Adjusted R-squared: 0.3742
## F-statistic: 79.94 on 3 and 393 DF, p-value: < 2.2e-16
prpblck katsayısını 0 kabul ettik yani prpblck değişkenini çıkararak kıstlı modelimizi oluşturuyoruz.
##
## Call:
## lm(formula = pentree ~ income + hrsopen, data = discrim)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.15183 -0.29367 -0.07359 0.22360 2.32868
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.500e+00 1.606e-01 21.793 <2e-16 ***
## income -3.368e-06 1.965e-06 -1.714 0.0872 .
## hrsopen -1.404e-01 9.461e-03 -14.838 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.5134 on 394 degrees of freedom
## (13 observations deleted due to missingness)
## Multiple R-squared: 0.3668, Adjusted R-squared: 0.3636
## F-statistic: 114.1 on 2 and 394 DF, p-value: < 2.2e-16
## Analysis of Variance Table
##
## Model 1: pentree ~ income + hrsopen
## Model 2: pentree ~ prpblck + income + hrsopen
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 394 103.86
## 2 393 101.87 1 1.9905 7.6789 0.005852 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Kısıtlı model için RSS: 103.86 Kısıtsız model için RSS: 101.87 Kısıtsız model, RSS değerini azaltmıştır (daha küçük hata kareleri toplamı), bu da ek değişkenin (prpblck) modele katkı sağladığını gösterir.
F değeri = 7.6789 Bu F değeri, eklenen prpblck değişkeninin katsayısının sıfır olmadığını test etmektedir.
p-value (Pr(>F)) = 0.005852
p-value, 0.05’ten küçüktür (%1’den daha küçük bir seviyede anlamlıdır). Bu durumda, prpblck değişkeninin modele anlamlı katkı sağladığı sonucu çıkarılır.