### R code from vignette source 'Lab2.snw' ################################################### ### code chunk number 1: typo ################################################### print("hello") ################################################### ### code chunk number 2: initfat ################################################### library(plm) data(Fatality, package="Ecdat") ################################################### ### code chunk number 3: fatspec ################################################### fm <- mrall ~ beertax ################################################### ### code chunk number 4: fat82 ################################################### mod82 <- lm(fm, Fatality[Fatality$year==1982, ]) summary(mod82) ################################################### ### code chunk number 5: fat88 ################################################### mod88 <- lm(fm, Fatality[Fatality$year==1988, ]) summary(mod88) ################################################### ### code chunk number 6: fatally ################################################### library(lmtest) for(i in 1982:1988) { cat(paste("Year", i)) print(coeftest(lm(fm, Fatality, subset=(Fatality$year==i)))) } ################################################### ### code chunk number 7: pvcmtime ################################################### pvcm(fm, Fatality, effect="time") ################################################### ### code chunk number 8: plotbyyear ################################################### plot(Fatality$beertax, Fatality$mrall, pch=19, col=Fatality$year) abline(lm(mrall~beertax, data=Fatality), lty=2, lwd=2) unyear <- unique(Fatality$year) for(i in 1:length(unyear)) { abline(lm(mrall~ beertax, data=Fatality[Fatality$year==unyear[i], ]), col=unyear[i]) } ################################################### ### code chunk number 9: fatpoolbtw ################################################### poolmod <- plm(fm, Fatality, model="pooling") coeftest(poolmod) bemod <- plm(fm, Fatality, model="between") coeftest(bemod) ################################################### ### code chunk number 10: feplot ################################################### plot(Fatality$beertax, Fatality$mrall, pch=19, col=Fatality$state) abline(lm(mrall~beertax, data=Fatality), lty=2, lwd=2) unstate <- unique(Fatality$state) for(i in 1:length(unstate)) { abline(lm(mrall~ beertax, data=Fatality[Fatality$state==unstate[i], ]), col=unstate[i]) } ################################################### ### code chunk number 11: xyplot ################################################### library(lattice) xyplot(mrall~beertax|state, data=Fatality, panel=function(x,y) { panel.xyplot(x,y) panel.abline(lm(y~x)) } ) ################################################### ### code chunk number 12: pooltest ################################################### pFtest(fm, Fatality) ################################################### ### code chunk number 13: plmtest ################################################### plmtest(fm, Fatality) ################################################### ### code chunk number 14: wooltest ################################################### pwtest(fm, Fatality) ################################################### ### code chunk number 15: lsdv ################################################### lsdvmod <- plm(update(fm, .~.+as.factor(state)), Fatality, model="p") coeftest(lsdvmod)["beertax",] ################################################### ### code chunk number 16: within ################################################### femod <- plm(fm, Fatality) summary(femod) ################################################### ### code chunk number 17: longdiff ################################################### mrall82 <- Fatality[Fatality$year==1982, "mrall"] beertax82 <- Fatality[Fatality$year==1982, "beertax"] mrall88 <- Fatality[Fatality$year==1988, "mrall"] beertax88 <- Fatality[Fatality$year==1988, "beertax"] dmrall <- mrall88-mrall82 dbeertax <- beertax88-beertax82 summary(lm(dmrall~dbeertax)) ################################################### ### code chunk number 18: longdiff.lag ################################################### ldfm.l <- I(mrall-lag(mrall, 6)) ~ I(beertax-lag(beertax, 6)) coeftest(plm(ldfm.l, Fatality, model="p")) ################################################### ### code chunk number 19: longdiff.diff ################################################### ldfm.d <- diff(mrall, 6) ~ diff(beertax, 6) coeftest(plm(ldfm.d, Fatality, model="p")) ################################################### ### code chunk number 20: fd ################################################### fdmod <- plm(fm, data=Fatality, model="fd") coeftest(fdmod) ################################################### ### code chunk number 21: wfdtest ################################################### pwfdtest(fm, Fatality) pwfdtest(fm, Fatality, h0="fe") ################################################### ### code chunk number 22: lsdvtime ################################################### coeftest(plm(update(fm, .~.+as.factor(year)), Fatality)) ################################################### ### code chunk number 23: fe2mod ################################################### fe2mod <- plm(fm, Fatality, effect="twoways") coeftest(fe2mod) ################################################### ### code chunk number 24: completemod ################################################### ## modello completo: fm <- mrall ~ beertax + I(mlda<=18) + I((mlda>18)&(mlda<=19)) + I((mlda>19)&(mlda<=20)) + I((jaild=="yes")|(comserd=="yes")) + vmiles + unrate + log(perinc) fe2mod.c <- plm(fm, Fatality, effect="twoways") ################################################### ### code chunk number 25: lht ################################################### library(car) linearHypothesis(fe2mod.c, c("unrate=0", "log(perinc)=0"), test="F")