Panel verilerinin analizinde çoklu regresyonları için kullanılan lm komutu yerine plm paketini kullanıcaz. İlk olarak bu plm paketini R-studio’ya yüklüyoruz.
library(plm)
## Warning: package 'plm' was built under R version 4.1.3
Benim burada kullanacağım verisetimin ismi ‘’driving’’. Bu verisetini gözlemleyebilmek ve değişkenlerimin ne anlama geldiklerini anlamak için bu verisetini indiriyorum.
library(wooldridge)
## Warning: package 'wooldridge' was built under R version 4.1.3
data('driving')
Verisetindeki her değişkenin ilk 10 gözlemini görebilmek için head komutunu şu şekilde kullanıyoruz;
head(driving, 10)
## year state sl55 sl65 sl70 sl75 slnone seatbelt minage zerotol gdl bac10
## 1 1980 1 1.000 0.000 0 0 0 0 18 0 0 1
## 2 1981 1 1.000 0.000 0 0 0 0 18 0 0 1
## 3 1982 1 1.000 0.000 0 0 0 0 18 0 0 1
## 4 1983 1 1.000 0.000 0 0 0 0 18 0 0 1
## 5 1984 1 1.000 0.000 0 0 0 0 18 0 0 1
## 6 1985 1 1.000 0.000 0 0 0 0 20 0 0 1
## 7 1986 1 1.000 0.000 0 0 0 0 21 0 0 1
## 8 1987 1 0.542 0.458 0 0 0 0 21 0 0 1
## 9 1988 1 0.000 1.000 0 0 0 0 21 0 0 1
## 10 1989 1 0.000 1.000 0 0 0 0 21 0 0 1
## bac08 perse totfat nghtfat wkndfat totfatpvm nghtfatpvm wkndfatpvm statepop
## 1 0 0 940 422 236 3.200 1.437 0.803 3893888
## 2 0 0 933 434 248 3.350 1.558 0.890 3918520
## 3 0 0 839 376 224 2.810 1.259 0.750 3925218
## 4 0 0 930 397 223 3.000 1.281 0.719 3934109
## 5 0 0 932 421 237 2.830 1.278 0.720 3951834
## 6 0 0 882 358 224 2.510 1.019 0.637 3972527
## 7 0 0 1080 500 279 3.177 1.471 0.821 3991569
## 8 0 0 1111 499 300 2.970 1.334 0.802 4015261
## 9 0 0 1024 423 226 2.580 1.066 0.569 4023858
## 10 0 0 1029 418 247 2.520 1.024 0.605 4030229
## totfatrte nghtfatrte wkndfatrte vehicmiles unem perc14_24 sl70plus sbprim
## 1 24.14 10.84 6.06 29.37500 8.8 18.9 0 0
## 2 24.07 11.08 6.33 27.85200 10.7 18.7 0 0
## 3 21.37 9.58 5.71 29.85765 14.4 18.4 0 0
## 4 23.64 10.09 5.67 31.00000 13.7 18.0 0 0
## 5 23.58 10.65 6.00 32.93286 11.1 17.6 0 0
## 6 22.20 9.01 5.64 35.13944 8.9 17.3 0 0
## 7 27.08 12.53 6.99 33.99371 9.8 17.0 0 0
## 8 27.67 12.43 7.47 37.40741 7.8 16.6 0 0
## 9 25.45 10.51 5.62 39.68992 7.2 16.2 0 0
## 10 25.53 10.37 6.13 40.83333 7.0 15.8 0 0
## sbsecon d80 d81 d82 d83 d84 d85 d86 d87 d88 d89 d90 d91 d92 d93 d94 d95 d96
## 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
## 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
## 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
## 4 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
## 7 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
## 8 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
## 9 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
## 10 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
## d97 d98 d99 d00 d01 d02 d03 d04 vehicmilespc
## 1 0 0 0 0 0 0 0 0 7543.874
## 2 0 0 0 0 0 0 0 0 7107.785
## 3 0 0 0 0 0 0 0 0 7606.622
## 4 0 0 0 0 0 0 0 0 7879.802
## 5 0 0 0 0 0 0 0 0 8333.562
## 6 0 0 0 0 0 0 0 0 8845.614
## 7 0 0 0 0 0 0 0 0 8516.377
## 8 0 0 0 0 0 0 0 0 9316.308
## 9 0 0 0 0 0 0 0 0 9863.649
## 10 0 0 0 0 0 0 0 0 10131.764
driving veriseti, Freeman (2007)’den elde edilmiştir. Bu tabloda görüldüğü üzere bazı değişkenler zamana bağlı değişmekte bazıları ise değişmemektedir. Mesela state değişkeni (alfabetik sıralanan 48 kıta devleti) yıllara göre değişmezken toplam trafik ölümleri(totfat) değişkeni yıllara göre değişim göstermektedir.
Eğer kullancağımız modelde sabit etkileri(fixed effect veya first differencing) kullanıcaksak state değişkeni ve slnone değişkenini kullanamayız. Ama state değişkeninin etkisinin incelenen zaman diliminde bir etkisi olup olmadığını anlayabilmek için 1980’den 1989’a kadar olan yıllar için yıl kuklaları ile state değişkeninin etkileşimini regresyona ekleyebiliriz.
library(plm)
Öncelikle verisetini panel verisetine çevirmemiz gerekli. Bunun için de pdata.frame komutunu kullanıcaz.
drivingpd <- pdata.frame(driving, index = c('state' , 'year'))
pdim(drivingpd)
## Balanced Panel: n = 48, T = 25, N = 1200
pdim komutu sayesinde verisetinin balansını kontrol edebildik. Kaç kişi için kaçy ıl kaç tane veri toplandığını görebiliyoruz. 48 kişiden 25 yıl boyunca 1200 gözlem toplanmıştır.
model1 <- plm(totfat ~ sbprim + sbsecon + factor(year)*minage, data = drivingpd, model = 'within')
summary(model1)
## Oneway (individual) effect Within Model
##
## Call:
## plm(formula = totfat ~ sbprim + sbsecon + factor(year) * minage,
## data = drivingpd, model = "within")
##
## Balanced Panel: n = 48, T = 25, N = 1200
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -956.8600 -48.3659 2.4352 49.2843 942.4742
##
## Coefficients: (16 dropped because of singularities)
## Estimate Std. Error t-value Pr(>|t|)
## sbprim -92.6078 23.3846 -3.9602 7.962e-05 ***
## sbsecon 23.6656 17.1465 1.3802 0.16780
## factor(year)1981 311.3725 420.4569 0.7406 0.45912
## factor(year)1982 353.6447 426.9757 0.8283 0.40770
## factor(year)1983 231.7364 429.4438 0.5396 0.58957
## factor(year)1984 191.8586 440.1786 0.4359 0.66302
## factor(year)1985 200.8533 475.6098 0.4223 0.67288
## factor(year)1986 -176.6593 534.6951 -0.3304 0.74117
## factor(year)1987 -687.4649 722.8049 -0.9511 0.34176
## factor(year)1988 -1355.4760 2152.6590 -0.6297 0.52904
## factor(year)1989 -164.5791 42.0427 -3.9146 9.605e-05 ***
## factor(year)1990 -185.9263 42.1382 -4.4123 1.122e-05 ***
## factor(year)1991 -249.8650 42.6743 -5.8552 6.259e-09 ***
## factor(year)1992 -297.6427 42.9004 -6.9380 6.723e-12 ***
## factor(year)1993 -279.8441 43.0175 -6.5054 1.167e-10 ***
## factor(year)1994 -268.3510 43.2595 -6.2033 7.775e-10 ***
## factor(year)1995 -244.9424 43.7927 -5.5932 2.802e-08 ***
## factor(year)1996 -235.2644 43.8376 -5.3667 9.745e-08 ***
## factor(year)1997 -233.4462 43.8642 -5.3220 1.240e-07 ***
## factor(year)1998 -241.1905 43.8938 -5.4949 4.841e-08 ***
## factor(year)1999 -231.3041 43.9614 -5.2615 1.712e-07 ***
## factor(year)2000 -225.5484 43.9994 -5.1262 3.483e-07 ***
## factor(year)2001 -220.5484 43.9994 -5.0125 6.242e-07 ***
## factor(year)2002 -200.3968 44.0402 -4.5503 5.943e-06 ***
## factor(year)2003 -198.9688 44.1303 -4.5087 7.212e-06 ***
## factor(year)2004 -203.8855 44.1303 -4.6201 4.282e-06 ***
## minage 27.7360 15.7997 1.7555 0.07945 .
## factor(year)1981:minage -18.2146 21.8687 -0.8329 0.40507
## factor(year)1982:minage -26.2371 22.1647 -1.1837 0.23677
## factor(year)1983:minage -21.4820 22.2058 -0.9674 0.33355
## factor(year)1984:minage -17.7166 22.6376 -0.7826 0.43402
## factor(year)1985:minage -18.7757 24.1285 -0.7782 0.43664
## factor(year)1986:minage 2.1014 26.6495 0.0789 0.93716
## factor(year)1987:minage 26.5210 35.3058 0.7512 0.45270
## factor(year)1988:minage 58.4193 102.9313 0.5676 0.57045
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 26071000
## Residual Sum of Squares: 21105000
## R-Squared: 0.19046
## Adj. R-Squared: 0.13103
## F-statistic: 7.50849 on 35 and 1117 DF, p-value: < 2.22e-16
Burda en büyük katsayı 1988 yılı ile minimum içme yaşı ilişkisi ve bu değer 58.4, t değeri ise 0.56.
plm içinde bulunan pvar komutu zamanla değişmeyen ve bireye göre değişmeyen değişkenleri bize gösterir.
pvar(drivingpd)
## no time variation: state
## no individual variation: year d80 d81 d82 d83 d84 d85 d86 d87 d88 d89 d90 d91 d92 d93 d94 d95 d96 d97 d98 d99 d00 d01 d02 d03 d04