Wooldridge Ekonometriye Giriş

Cilt 1 - Bölüm 6

Hüseyin Utku Demir

Karabük Üniversitesi, Dr. Öğr. Üy.

2022/10/03 (2022-10-10 tarihinde yenilendi)

Ders Kitabı

Ekonometri 1 ders kitabı (sizin değil, sizin ders kitabınız Cilt 2)

Başlangıç

Dersimizde R-Studio kullandığımızı biliyorsunuz. Eğer masaüstünüze R ve R studio yüklemek istiyorsanız bu derse göz atmayı unutmayın. Dersin içeriğinde, R ve R studio’yu nasıl yükleyebileceğiniz ve nasıl kullanmaya başlayabileceğiniz hakkında bilgiler mevcuttur. demir.pw/courses/r-ekonometri-1/rstudioyukleme.

Notlar

  • Not 1: Derslerimizin çoğunda Rmarkdown kullanıyoruz. Rmarkdown’ı nasıl kullanacağınızı anlamak için bu link’de bulunan dersi okuyabilirsiniz. demir.pw/courses/r-ekonometri-1/rmarkdownodev.

  • Not2: Diğer bütün derslere demir.pw adresinden Dersler -> R ile Ekonometri; üzerinden de ulaşabilirsiniz

R cloud

  • Eğer bilgisayarınız eskiyse ve R-studio’nun bazı programlarını çalıştıramayacaksa, R-studio’yu internet üzerinden online kullanmanızı öneriyorum. rstudio.cloud üzerinden hesap açıp, işlemlerinizi tabletleriniz üzerinden bile takip edebilirsiniz.

Veri Ölçeğinin SEKK İstatiskilerine Etkileri (1)

İlk örnek

Veri Ölçeğinin SEKK İstatiskilerine Etkileri (2)

devamı

Veri Ölçeğinin SEKK İstatiskilerine Etkileri (3)

  • Kitabınız bu örnekle başlıyor. Örnekleri benimle beraber yapmaya çalışın. Kitabınızı okurken sonuçlara nasıl ulaşıldığını anlayacaksınız ve bölüm sonu sorularını çözebilmenize yardımcı olacak.

  • İlk başta wooldridge veri setini yüklemeyi hatırlayacağız daha sonra örnekte verilen il sonuçlara ulaşacağız. Böylece geçen dönemden öğrendiğiniz kodlama bilgilerini hatırlamış olacaksınız.

Veri Ölçeğinin SEKK İstatiskilerine Etkileri (4)

  • Eğer wooldridge paketi yüklü değilse önce paketi install.packages(“wooldridge”) koduyla yüklemeniz gerektiğini unutmayın.
  • eğer zaten yüklü ise library yapmayı unutmayın
library(wooldridge)
  • BWGHT veri setini indirin
data(bwght, package = 'wooldridge')

Veri Ölçeğinin SEKK İstatiskilerine Etkileri (5)

  • Geçmiş derslerinizden hatırlayacağınız üzere, veri setine önce bir göz gezdiriyoruz. Bu analize başlamak için ilk adımımız. İyi bir veri analisti olmak istiyorsanız öncelik grafikler ve tablolardan geçer

  • Veriyi tablolaştırmak için kullandığımız yöntemlerden biri rmarkdown paketinin içinde bulunan paged_table komutuydu. Bu komutu ve ne yaptığını hatırlayalım. Veri setinin isminin bwght olduğunu unutmayın.

library(rmarkdown)

Veri Seti

paged_table(bwght)

Modellerin Rmarkdown’a yazılması

\[\hat{bwght}= \hat{\beta }_0 + \hat{\beta }_1 \cdot cigs + \hat{\beta }_2 faminc \]

  • Matematiksel modellerinizi aşağıdaki örnekte olduğu gibi dolar işaretlerinin arasında Rmarkdow sayfanıza yazarsanız üst taraftaki gibi bir görüntü elde edebilirsiniz. Beta ve şapka işaretleri yapmak için latex’te hangi komutlar girildiğini aşağıdaki örnekten inceleyin.
$$\hat{bwght}= \hat{\beta }_0 + \hat{\beta }_1 \cdot cigs + \hat{\beta }_2 faminc $$

Birinci regresyon (1)

  • Bir datadan, verileri iki farklı yolla çekebiliyorduk. İki yöntemde bize aynı sonucu verecektir.

  • Birinci yöntem: lm komutunun içine hangi datadan verileri aldığımızı (data =) opsiyonuyla belirtmek.

lm(bwght ~ cigs + faminc, data = bwght)

Call:
lm(formula = bwght ~ cigs + faminc, data = bwght)

Coefficients:
(Intercept)         cigs       faminc  
  116.97413     -0.46341      0.09276  

Birinci regresyon (2)

  • İkinci yöntem: lm komutunun içine hangi datadan verileri aldığımızı ($) işaretiyle belirtmek.
lm(bwght$bwght ~ bwght$cigs + bwght$faminc)

Call:
lm(formula = bwght$bwght ~ bwght$cigs + bwght$faminc)

Coefficients:
 (Intercept)    bwght$cigs  bwght$faminc  
   116.97413      -0.46341       0.09276  
  • İki yöntemde bize sonuçları verdi. Tekrar kitabınıza dönüp ilgili bölümü okuyun. (185. sayfa)

İkinci regresyon (1)

  • Doğum ağırlıklarını ons yerine pound cinsinden ölçtüğünüzde ne değişir?

  • Bu soruyu cevaplamak içib ons cinsinden olan bgwht değişkenini pound’a çevirmeliyiz. Önce ons’un pound’a nasıl çevrildiğini hatırlayalım.

  • google’a ons’un tanımı yazarsanız, bir poundun, on altıda biri olduğunu bulursunuz.

İkinci regresyon (2)

  • kitabınızda bulunan veri adlarını aynı tutmak için bwghtlbs adıyla bir değişken oluşturalım, bu değişken de bwght veri setinin içinde olsun ve bwght değişkenini kullanarak pound cinsinden yeni bir değişken elde edelim
bwght$bwghtlbs <- bwght$bwght / 16

İkinci regresyon (3)

  • bu değişkeni kullanarak ikinci regresyonumuzu kuralım ve bağımlı değişkende meydana gelen ölçü birimi değişimin sonuçları nasıl etkilediğini gözlemleyelim.
lm(bwght$bwghtlbs ~ bwght$cigs + bwght$faminc)

Call:
lm(formula = bwght$bwghtlbs ~ bwght$cigs + bwght$faminc)

Coefficients:
 (Intercept)    bwght$cigs  bwght$faminc  
    7.310883     -0.028963      0.005798  

İkinci regresyon (4)

  • Aynı regresyon I() operatörü kullanılarak yapılabilir.

  • Yeni bir değişken yaratmaya gerek kalmadan, I() operatörüyle regresyon içerisinde matematiksel işlem yapabilirsiniz.

lm(I(bwght/16) ~ cigs + faminc, data = bwght)

Call:
lm(formula = I(bwght/16) ~ cigs + faminc, data = bwght)

Coefficients:
(Intercept)         cigs       faminc  
   7.310883    -0.028963     0.005798  
  • Sonuçlar aynı.

Üçüncü regresyon (1)

  • Kitabınızın 6. bölümü ölçü birimlerini değiştirdiğimizde, regresyon sonuçlarının nasıl değişebileceğini anlatıyor.

  • Bu amaçla kitabınızın 6. bölümünün 6.1 numaralı tablosunu tekrar oluşturuyoruz.

  • Tablo 6.1’in son regresyonu, bağımsız değişkenlerden biri olan cigs (hamilelik süresince anne tarafından içilen günlük sigara sayısı) değişkenini, packs (hamilelik süresince anne tarafından içilen günlük paket sayısı) değişkinine çevirelim ve regresyona koyalım. Sonuç sizce nasıl değişir.

Üçüncü regresyon (2)

lm(bwght ~ I(cigs/20) + faminc, data = bwght)

Call:
lm(formula = bwght ~ I(cigs/20) + faminc, data = bwght)

Coefficients:
(Intercept)   I(cigs/20)       faminc  
  116.97413     -9.26815      0.09276  

Modelleri tablolaştırmak (1)

  • Geçen seneden hatırlayacağınız üzere üç regresyon modelimize isim verebiliyorduk. Aslında baştan modellere isim verseydik tablolaştırmak daha kolay olacaktı.
model_1<- lm(bwght ~ cigs + faminc, data = bwght)
model_2<- lm(I(bwght/16) ~ cigs + faminc, data = bwght)
model_3<- lm(bwght ~ I(cigs/20) + faminc, data = bwght)
  • stargazer paketini yükleyin
library(stargazer)

Modelleri tablolaştırmak (2)

stargazer(list(model_1,model_2,model_3), type = "text")

=================================================================
                                       Dependent variable:       
                                ---------------------------------
                                  bwght    I(bwght/16)   bwght   
                                   (1)         (2)        (3)    
-----------------------------------------------------------------
cigs                            -0.463***   -0.029***            
                                 (0.092)     (0.006)             
                                                                 
I(cigs/20)                                             -9.268*** 
                                                        (1.832)  
                                                                 
faminc                           0.093***   0.006***    0.093*** 
                                 (0.029)     (0.002)    (0.029)  
                                                                 
Constant                        116.974***  7.311***   116.974***
                                 (1.049)     (0.066)    (1.049)  
                                                                 
-----------------------------------------------------------------
Observations                      1,388       1,388      1,388   
R2                                0.030       0.030      0.030   
Adjusted R2                       0.028       0.028      0.028   
Residual Std. Error (df = 1385)   20.063      1.254      20.063  
F Statistic (df = 2; 1385)      21.274***   21.274***  21.274*** 
=================================================================
Note:                                 *p<0.1; **p<0.05; ***p<0.01

Kitap açıklaması (1)

Kitap açıklaması (2)

-Sayfa 185

Kitap açıklaması (3)

  • Sayfa 186

Kitap açıklaması (4)

Beta Katsayıları

  • Ölçeklendirme bize sonuçların yorumlanmasında da yardımcı olabilir.

  • Örneğin SAT (üniversite sınavı) gibi bir test sonucunun, üniversite not ortalaması (GPA) üzerindeki etkisine bakılırsa, SAT’ın standart sapması bulunabilir ve SAT skoru bir veya iki standart sapma artınca ne olduğu gözlemlenebilir.

Beta Katsayıları

  • Örneğin bir değişken, kendi ortalamasından çıkarılıp standart sapmasına bölünerek standartlaştırılabilir.

\[ z_y = \frac{y-\bar{y}}{\sigma_y} \]

Beta Katsayıları

\[ y_i = \hat{\beta_0} + \hat{\beta_1} x_{i1} + \hat{\beta_2} x_{i2} + ... + \hat{\beta_k} x_{ik} + \hat{u_i} \]

\[ y_i - \bar{y} = \hat{\beta_1} (x_{i1} - \bar{x_1}) + \hat{\beta_2} (x_{i2} - \bar{x_2}) + ... + \hat{\beta_k} (x_{ik} - \bar{x_k}) + \hat{u_i} \]

Beta Katsayıları

\[ \frac{y_i - \bar{y}}{\sigma_y} = (\frac{\sigma_1}{\sigma_y}) \beta_1 [\frac{(x_{i1} - \bar{x_1})}{\sigma_1}] + ... \]

\[ ... + (\frac{\sigma_k}{\sigma_y}) \beta_k [\frac{(x_{ik} - \bar{x_k})}{\sigma_k}] + (\frac{u_i}{\sigma_y}) \]

Beta Katsayıları

  • Son denklem aşağıdaki gibi yeniden yazılabilir.

\[ z_y = b_1 z_1 + b_2 z_2 + ... + b_k z_k + hata \] - \(x_j\) bir standart sapmalık artarsa, y \(b_j\) standart sapma kadar artar.

  • Çünkü denklem açıklayıcı değişkenlerin ölçeğinden bağımsızdır.

Örnek 6.1 Kirliliğin konut fiyatları üzerindeki etkileri

  • Kitabınız bu örnekte, beta katsayılarının kullanımını göstermek için hprice2 verisini kullanıyor.

  • Temel bağımsız değişken, her bir topluluğun teneffüs ettiği havadaki nitrojen oksidin bir ölçümü olan nox değişkeni.

\[ price = \beta_0 + \beta_1 nox + \beta_2 crime ... \]

\[ ... + \beta_3 rooms + \beta_4 dist + \beta_5 stratio \]

Örnek 6.1 Kirliliğin konut fiyatları üzerindeki etkileri

  • Öncelilke bu değişkenlerin hepsini z-skore’larına çevirmeliyiz.

\[ zprice = \beta_1 znox + \beta_2 zcrime ... \]

\[ ... + \beta_3 zrooms + \beta_4 zdist + \beta_5 zstratio \]

Örnek 6.1 Kirliliğin konut fiyatları üzerindeki etkileri

  • sonra kitabınızda verilen sonuçlara ulaşalım, yani

\[ \hat{zprice} = -0,340 znox -0,143 zcrime .. \]

\[ + 0,514 zrooms -0,235 zdist -0,270 zstratio \]

  • sonra sonuçları yorumlayalım

Örnek 6.1

library(wooldridge)
  • hpprice2 veri setini indirin
data(hprice2)

Örnek 6.1

library(rmarkdown)
paged_table(hprice2)

Örnek 6.1

  • console’a ?hprice2 yazarak veri setinin tanımına ulaşın ve regresyon içinde kullandığımız değişkenkerin tanımına bakın.
  • price: median housing price, $; nox: nit ox concen; parts per 100m; crime: crimes committed per capita; rooms: avg number of rooms; dist: wght dist to 5 employ centers; stratio: average student-teacher ratio

Örnek 6.1

  • R’da standardizasyon yapmak için scale komutunu kullanabilirsiniz.
lm(scale(price) ~ 0 + scale(nox) + scale(crime) + scale(rooms) + scale(dist) + scale(stratio), data = hprice2)

Call:
lm(formula = scale(price) ~ 0 + scale(nox) + scale(crime) + scale(rooms) + 
    scale(dist) + scale(stratio), data = hprice2)

Coefficients:
    scale(nox)    scale(crime)    scale(rooms)     scale(dist)  scale(stratio)  
       -0.3404         -0.1433          0.5139         -0.2348         -0.2703  

Örnek 6.1

\[ \hat{zprice} = -0,340 znox -0,143 zcrime ... \]

\[ ... + 0,514 zrooms -0,235 zdist -0,270 zstratio \]

  • neden scale edilmiş sonuçları scale edilmemiş sonuçlara tercih ederiz.
  • bu denklem bize nox’daki bir standart sapma artışın fiyatı 0,34 standart sapma azalttığını, ancak crime’daki bir standart sapma artışın fiyatı 0,14 standart sapma azalttığını göstermektedir.

Örnek 6.1

  • Kirliliğin etkisinin suçun etkisinden büyük olduğunu anlayabiliriz.
  • Oda sayısı en büyük standartlaştırılmış etkiye sahiptir.
  • Standartlaştırma t istatistiklerini etkilemez.

6.2.1 Logaritmik fonksiyonel form

  • Kitabınız bu bölüme aşağıdaki modelin parametrelerini yorumlayarak başlamıştır.

\[ log(price) = \beta_0 + \beta_1 log(nox) + \beta_2 rooms + u \]

  • buradaki log doğal logaritmadır.
  • iki tarafın logaritması alındığından \(\beta_1\) kirliliğe göre fiyat esnekliğini verir. (esneklik formülünü hatırlayın)

6.2.1 Logaritmik fonksiyonel form

  • \(\beta_2\) oda sayısı değiştiğinde fiyatta oluşan yüzdelik (yaklaşık) değeri verir.

  • Bu bilgilere göre sonuçları yorumlayalım.

6.2.1 Logaritmik fonksiyonel form

lm(log(price) ~ log(nox) +  rooms , data = hprice2)

Call:
lm(formula = log(price) ~ log(nox) + rooms, data = hprice2)

Coefficients:
(Intercept)     log(nox)        rooms  
     9.2337      -0.7177       0.3059  
  • Yani oda sayısı sabit tutulduğunda, nox %1 artarsa, fiyat % 0,718 düşer.
  • bir fazla oda, fiyatı % 30,6 arttırır.

6.2.1 Karasel modeller, Örnek 6.2

  • Aynı denklemi kullanıyoruz ama rooms değişkeninin karesel terimini ekliyoruz.

\[ log(price) = \beta_0 + \beta_1 log(nox) + \beta_2 log(dist) ... \]

\[ ... + \beta_3 rooms + \beta_4 rooms^2 + \beta_5 stratio + u \]

ornek6_2<-lm(log(price) ~ log(nox) + log(dist)+  rooms + I(rooms^2) + stratio , data = hprice2)

Örnek 6.2

summary(ornek6_2)

Call:
lm(formula = log(price) ~ log(nox) + log(dist) + rooms + I(rooms^2) + 
    stratio, data = hprice2)

Residuals:
     Min       1Q   Median       3Q      Max 
-1.04285 -0.12774  0.02038  0.12650  1.25272 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) 13.385477   0.566473  23.630  < 2e-16 ***
log(nox)    -0.901682   0.114687  -7.862 2.34e-14 ***
log(dist)   -0.086781   0.043281  -2.005  0.04549 *  
rooms       -0.545113   0.165454  -3.295  0.00106 ** 
I(rooms^2)   0.062261   0.012805   4.862 1.56e-06 ***
stratio     -0.047590   0.005854  -8.129 3.42e-15 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.2592 on 500 degrees of freedom
Multiple R-squared:  0.6028,    Adjusted R-squared:  0.5988 
F-statistic: 151.8 on 5 and 500 DF,  p-value: < 2.2e-16

Örnek 6.2

\[ \hat{log(price)} = 13,39 -0,902 log(nox) -0,087 log(dist) ... \]

\[ ... - 0.545 rooms + 0,062 rooms^2 -0,048 stratio + u \]

\(rooms^2\)’nin t istatistiği yaklaşık 4,77’dir ve istatistiksel olarak anlamlıdır.

hangi oda sayısına kadar fiyatların düştüğünü türev yardımıyla bulabiliriz.

Örnek 6.2

\[ \frac{\partial \hat{log(price)}}{\partial rooms} = - 0,545 + 2 \cdot 0,062 rooms = 0 \]

\[ 0,124 rooms = 0,545 \]

\[ rooms = 0,545 / 0,124 = 4,4 \]

Örnek 6.2

  • oda sayısı 3 odadan 4 odaya çıktığında evin beklenen değeri düşer mi
  • örnekte yer alan 506 topluluktan sadece 5’i 4,4’ten az odalı eve sahip. Örneğin %1’lik kısmını oluşturuyor.
  • Bu yüzden ev sayısının 5’den 6’ya çıkarılınca olan etkisine bakabiliriz.

\[ \partial \hat{log(price)} = [- 0,545 + 2 \cdot 0,062 rooms] \cdot \partial rooms \]

\[ \partial \hat{log(price)} = [- 0,545 + 0,124 rooms] \cdot \partial rooms \]

Örnek 6.2

\[ \partial \hat{log(price)} = [- 0,545 + 0,124 \cdot 5] \cdot (6-5) \]

\[ \partial \hat{log(price)} = [- 0,545 + 0,62] \cdot (6-5) \]

Örnek 6.2

\[ \partial \hat{log(price)} = 0,075 \]

  • 5 odadan, 6 odaya artınca ev fiyatlarını yaklaşık %7,5 arttırıyor.
  • 6 odadan, 7 odaya artış ev fiyatlarını yaklaşık %20 arttırıyor. (Hesaplamasını siz yapın.)

Örnek 6.2

R’da aynı sonuçları ‘poly’ komutuyla da bulabiliriz.

ornek6_2_poly<-lm(log(price) ~ log(nox) + log(dist)+  poly(rooms, 2, raw = TRUE ) + stratio , data = hprice2)

summary(ornek6_2_poly)

Call:
lm(formula = log(price) ~ log(nox) + log(dist) + poly(rooms, 
    2, raw = TRUE) + stratio, data = hprice2)

Residuals:
     Min       1Q   Median       3Q      Max 
-1.04285 -0.12774  0.02038  0.12650  1.25272 

Coefficients:
                             Estimate Std. Error t value Pr(>|t|)    
(Intercept)                 13.385477   0.566473  23.630  < 2e-16 ***
log(nox)                    -0.901682   0.114687  -7.862 2.34e-14 ***
log(dist)                   -0.086781   0.043281  -2.005  0.04549 *  
poly(rooms, 2, raw = TRUE)1 -0.545113   0.165454  -3.295  0.00106 ** 
poly(rooms, 2, raw = TRUE)2  0.062261   0.012805   4.862 1.56e-06 ***
stratio                     -0.047590   0.005854  -8.129 3.42e-15 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.2592 on 500 degrees of freedom
Multiple R-squared:  0.6028,    Adjusted R-squared:  0.5988 
F-statistic: 151.8 on 5 and 500 DF,  p-value: < 2.2e-16

Örnek 6.2

  • Aynı örnek için hangi değişkenin açıklayıcılığı daha yüksek diye bakmak isteyebiliriz.
  • car paketi bize bu konuda yardımcı olabilir.
  • ANOVA tablosu hangi değişkenin, daha çok açıklayıcılık eklediğini gösterebilecektir.

Örnek 6.2

library(car)
Anova(ornek6_2_poly)
Anova Table (Type II tests)

Response: log(price)
                           Sum Sq  Df  F value    Pr(>F)    
log(nox)                    4.153   1  61.8129 2.341e-14 ***
log(dist)                   0.270   1   4.0204   0.04549 *  
poly(rooms, 2, raw = TRUE) 14.838   2 110.4188 < 2.2e-16 ***
stratio                     4.440   1  66.0848 3.423e-15 ***
Residuals                  33.595 500                       
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • İlk sütun sapmaların karalerinin toplamının, diğer regresörler kontrol edildikten sonra değişkenler tarafından ne kadar açıklandığını gösteriyor.

  • Oda sayısı en güçlü açıklayıcı güce sahip.

Etkileşim terimli modeller

  • Kitabınız şöyle bir modelle başlıyor

\[ price = \beta_0 + \beta_1 sqrft + \beta_2 bdrms + ... \]

\[ ... + \beta_3 sqrft \cdot bdrms + \beta_4 bthrms + u \]

Bu modelde yatak odası sayısının (bdrms), fiyat (price) üzerindeki etkisi (diğer değişkenler sabitken) türev yardımıyla bulunabilir.

Etkileşim terimli modeller

\[ \frac{\partial price}{\partial bdrms} = \beta_2 + \beta_3 sqrft \]

  • yatak odası sayısı (bdrms) ile ev büyüklüğü (sqrft) arasında etkileşim etkisi bulunmaktadır.

Örnek 6.3

  • Bir final sınavında standartlaştırılmış sonuçları (stndfnl), devam oranı (atndrte), üniversite öncesi genel ortalaması (PriGPA) ve ACT skorunun yüzdesi olarak açıklayan model

\[ stndfnl = \beta_0 + \beta_1 atndrte + \beta_2 priGPA + \beta_3 ACT ... \]

\[ + \beta_4 priGPA^2 + \beta_5 ACT^2 + \beta_6 priGPA \cdot atndrte \]

Örnek 6.3

Derse katılım oranının final sonuçları üzerindeki etkisi

\[ \frac{\partial stndfnl}{\partial atndrte} = \beta_1 + \beta_6 priGPA \]

olur. ‘attend’ veri setini kullabarak modeli tahmin edelim.

Örnek 6.3

data("attend")
(ornek6_3 <- lm(stndfnl~ atndrte*priGPA + ACT + I(priGPA^2) + I(ACT^2), data=attend))

Call:
lm(formula = stndfnl ~ atndrte * priGPA + ACT + I(priGPA^2) + 
    I(ACT^2), data = attend)

Coefficients:
   (Intercept)         atndrte          priGPA             ACT     I(priGPA^2)  
      2.050293       -0.006713       -1.628540       -0.128039        0.295905  
      I(ACT^2)  atndrte:priGPA  
      0.004533        0.005586  

Örnek 6.3

  • 0 noktasında priGPA etkisine bakmak çok anlamlı olmayacaktır.

  • Çünkü priGPA’in max, min ve ortalama değerlerine bakarsak

max(attend$priGPA)
[1] 3.93
min(attend$priGPA)
[1] 0.857
mean(attend$priGPA)
[1] 2.586775
  • en düşük priGPA’in bile 0.857 olduğunu görürüz.

Örnek 6.3

  • bu yüzden ortalama olarak 2.59 seviyesindeki etkisini ölçebiliriz.

  • coef komutu bize herhangi bir katsayıyı verebilir.

  • Örnek

katsayi <- coef(ornek6_3)
katsayi["atndrte"]
     atndrte 
-0.006712928 
katsayi["atndrte:priGPA"]
atndrte:priGPA 
   0.005585907 

Örnek 6.3

\[ \frac{\partial stndfnl}{\partial atndrte} = \beta_1 + \beta_6 priGPA \]

  • bu formülü kullanarak derse katılımın standardize edilmiş final notlarına etkisini ortalama priGPA verisi üzerinden bulabiliriz.
katsayi["atndrte"] + mean(attend$priGPA)*katsayi["atndrte:priGPA"]
    atndrte 
0.007736558 

Örnek 6.3

library(car)
linearHypothesis(ornek6_3, c("atndrte + 2.59*atndrte:priGPA"))
Linear hypothesis test

Hypothesis:
atndrte  + 2.59 atndrte:priGPA = 0

Model 1: restricted model
Model 2: stndfnl ~ atndrte * priGPA + ACT + I(priGPA^2) + I(ACT^2)

  Res.Df    RSS Df Sum of Sq      F   Pr(>F)   
1    674 519.34                                
2    673 512.76  1    6.5772 8.6326 0.003415 **
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

6.4 Öngörü ve Artık Analizi

  • Katılım oranı (atndrte) yüzde olarak ölçüldüğünden, bu derse katılım oranındaki %10 puanlık bir artışın final sınav sonucunu 0,78 final sınavı standart sapması kadar arttırdığı sonucuna varabiliriz.

  • Bu bölümü anlamak için kitabınızdaki Örnek 6.5’i kullanacağız. Üniversite not ortalamasının (colgpa) öngörüsü için aşağıdaki denklem kullanılmış.

\[ colgpa = \beta_0 + \beta_1 sat + \beta_2 hsperc + \beta_3 hsize + \beta_4 hsize^2 \]

  • regresyon sonuçlarına bakalım

Örnek 6.5

data(gpa2)
ornek6_5 <- lm(colgpa~sat+ hsperc + hsize + I(hsize^2), data=gpa2 )
summary(ornek6_5)

Call:
lm(formula = colgpa ~ sat + hsperc + hsize + I(hsize^2), data = gpa2)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.57543 -0.35081  0.03342  0.39945  1.81683 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)  1.493e+00  7.534e-02  19.812  < 2e-16 ***
sat          1.492e-03  6.521e-05  22.886  < 2e-16 ***
hsperc      -1.386e-02  5.610e-04 -24.698  < 2e-16 ***
hsize       -6.088e-02  1.650e-02  -3.690 0.000228 ***
I(hsize^2)   5.460e-03  2.270e-03   2.406 0.016191 *  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 0.5599 on 4132 degrees of freedom
Multiple R-squared:  0.2781,    Adjusted R-squared:  0.2774 
F-statistic:   398 on 4 and 4132 DF,  p-value: < 2.2e-16

Örnek 6.5

  • Örnek sat=1200, hsperc=30 ve hsize=5’ken öngörülen GPA’in bulunan betalar yardımıyla bulunmasının basit olduğundan bahsediyor.

  • bu tahmini yapabilmek için bu bilgilerden oluşan bir veri seti oluşturalım.

tahmin_verileri = data.frame(sat=1200, hsperc=30, hsize=5)
tahmin_verileri
   sat hsperc hsize
1 1200     30     5

Örnek 6.5

tahmin_verileri = data.frame(sat=1200, hsperc=30, hsize=5)
tahmin_verileri
   sat hsperc hsize
1 1200     30     5
  • Tahmin verilerini kullanarak bu özelliklere sahip öğrencinin not ortalaması ‘predict’ komutuyla bulunabilir ve bu tahminin %95 güven aralığı çıkarılabilir
predict(ornek6_5, tahmin_verileri, interval = "confidence" )
       fit      lwr      upr
1 2.700075 2.661104 2.739047