> mdata <-read.table("granger.csv", header=T, sep=",") > q <-mdata[,1] > ly <-log(mdata[,2]) > lm <-log(mdata[,3]) > dq2 <- as.numeric(q==2) > dq3 <- as.numeric(q==3) > dq4 <- as.numeric(q==4) > ly <-ts(ly, start=c(1980,1),frequency=4) > lm <-ts(lm, start=c(1980,1),frequency=4) > dq2<-ts(dq2,start=c(1980,1),frequency=4) > dq3<-ts(dq3,start=c(1980,1),frequency=4) > dq4<-ts(dq4,start=c(1980,1),frequency=4) > ly1 <-lag(ly,k=-1) > ly2 <-lag(ly,k=-2) > ly3 <-lag(ly,k=-3) > ly4 <-lag(ly,k=-4) > lm1 <-lag(lm,k=-1) > lm2 <-lag(lm,k=-2) > lm3 <-lag(lm,k=-3) > lm4 <-lag(lm,k=-4) > mdata <- cbind(ly,ly1,ly2,ly3,ly4,lm,lm1,lm2,lm3,lm4,dq2,dq3,dq4) > mdata <-mdata[21:44,] > mdata <-as.data.frame(mdata) > ly_result <-lm(ly~ly1+ly2+ly3+ly4+lm1+lm2+lm3+lm4+dq2+dq3+dq4, data=mdata) > summary(ly_result) Call: lm(formula = ly ~ ly1 + ly2 + ly3 + ly4 + lm1 + lm2 + lm3 + lm4 + dq2 + dq3 + dq4, data = mdata) Residuals: Min 1Q Median 3Q Max -0.0061791 -0.0030256 -0.0001432 0.0027932 0.0097498 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 6.673769 2.473894 2.698 0.0245 * ly1 -0.318887 0.325056 -0.981 0.3522 ly2 0.266470 0.275027 0.969 0.3579 ly3 -0.088200 0.166801 -0.529 0.6098 ly4 -0.174043 0.146903 -1.185 0.2665 lm1 -0.413479 0.188394 -2.195 0.0558 . lm2 0.354938 0.292368 1.214 0.2556 lm3 0.743554 0.324928 2.288 0.0479 * lm4 -0.009556 0.416683 -0.023 0.9822 dq2 -0.078775 0.030799 -2.558 0.0308 * dq3 -0.014003 0.048190 -0.291 0.7780 dq4 0.085841 0.033831 2.537 0.0319 * --- Signif. codes: 0 e***f 0.001 e**f 0.01 e*f 0.05 e.f 0.1 e f 1 Residual standard error: 0.006413 on 9 degrees of freedom Multiple R-squared: 0.9978, Adjusted R-squared: 0.9951 F-statistic: 371.9 on 11 and 9 DF, p-value: 1.429e-10 > lm_result <-lm(lm~ly1+ly2+ly3+ly4+lm1+lm2+lm3+lm4+dq2+dq3+dq4, data=mdata) > summary(lm_result) Call: lm(formula = lm ~ ly1 + ly2 + ly3 + ly4 + lm1 + lm2 + lm3 + lm4 + dq2 + dq3 + dq4, data = mdata) Residuals: Min 1Q Median 3Q Max -0.0137240 -0.0040633 -0.0001479 0.0035961 0.0194727 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) -2.72194 3.48825 -0.780 0.4503 ly1 0.31162 0.48283 0.645 0.5308 ly2 0.17937 0.40285 0.445 0.6641 ly3 -0.39569 0.27823 -1.422 0.1805 ly4 0.45065 0.23708 1.901 0.0816 . lm1 1.66203 0.28125 5.909 7.15e-05 *** lm2 -0.87629 0.44924 -1.951 0.0748 . lm3 0.58057 0.51141 1.135 0.2784 lm4 -0.65209 0.56977 -1.144 0.2747 dq2 0.03203 0.05001 0.640 0.5340 dq3 0.07590 0.07495 1.013 0.3312 dq4 0.01470 0.05049 0.291 0.7759 --- Signif. codes: 0 e***f 0.001 e**f 0.01 e*f 0.05 e.f 0.1 e f 1 Residual standard error: 0.01082 on 12 degrees of freedom Multiple R-squared: 0.9981, Adjusted R-squared: 0.9963 F-statistic: 564.2 on 11 and 12 DF, p-value: 1.62e-14 > library(car) > linearHypothesis(ly_result,c("lm1=0","lm2=0","lm3=0","lm4=0"),test="F") Linear hypothesis test Hypothesis: lm1 = 0 lm2 = 0 lm3 = 0 lm4 = 0 Model 1: restricted model Model 2: ly ~ ly1 + ly2 + ly3 + ly4 + lm1 + lm2 + lm3 + lm4 + dq2 + dq3 + dq4 Res.Df RSS Df Sum of Sq F Pr(>F) 1 16 0.00255361 2 12 0.00094841 4 0.0016052 5.0775 0.01252 * --- Signif. codes: 0 e***f 0.001 e**f 0.01 e*f 0.05 e.f 0.1 e f 1 > linearHypothesis(lm_result,c("ly1=0","ly2=0","ly3=0","ly4=0"),test="F") Linear hypothesis test Hypothesis: ly1 = 0 ly2 = 0 ly3 = 0 ly4 = 0 Model 1: restricted model Model 2: lm ~ ly1 + ly2 + ly3 + ly4 + lm1 + lm2 + lm3 + lm4 + dq2 + dq3 + dq4 Res.Df RSS Df Sum of Sq F Pr(>F) 1 16 0.0019087 2 12 0.0014056 4 0.00050304 1.0736 0.4118