[R] dynlm and lm: should they give same estimates?
Pfaff, Bernhard Dr.
Bernhard_Pfaff at fra.invesco.com
Thu Oct 16 10:58:36 CEST 2008
Hello Werner,
this is easily clarified. The code in my book contains an error: please
replace the line:
error.lagged <- error[-c(99, 100)]
with
error.lagged <- error[-c(1, 100)]
I will file this in the errata section on my web-site and will correct
the relevant example in the urca and vars packages for their next
releases.
Best,
Bernhard
>
>Hi,
>
>I was wondering why the results from lm and dynlm are not the
>same for what I think is the same model.
>I have just modified example 4.2 from the Pfaff book, please
>see below for the code and results.
>
>Can anyone tell my what I am doing wrongly?
>
>Many thanks,
> Werner
>
>set.seed(123456)
>e1 <- rnorm(100)
>e2 <- rnorm(100)
>y1 <- ts(cumsum(e1))
>y2 <- ts(0.6*y1 + e2)
>lr.reg <- lm(y2 ~ y1)
>error <- ts(residuals(lr.reg))
>error.lagged <- error[-c(99, 100)]
>
>dy1 <- diff(y1)
>dy2 <- diff(y2)
>diff.dat <- data.frame(embed(cbind(dy1, dy2), 2))
>colnames(diff.dat) <- c('dy1', 'dy2', 'dy1.1', 'dy2.1')
>ecm.reg <- lm(dy2 ~ error.lagged + dy1.1 + dy2.1,
> data=diff.dat)
>ecm.dynreg <- dynlm(d(y2) ~ L(error) + L(d(y1),1) + L(d(y2),1))
>summary(ecm.reg)
>summary(ecm.dynreg)
>
>> summary(ecm.reg)
>
>Call:
>lm(formula = dy2 ~ error.lagged + dy1.1 + dy2.1, data = diff.dat)
>
>Residuals:
> Min 1Q Median 3Q Max
>-2.9588 -0.5439 0.1370 0.7114 2.3065
>
>Coefficients:
> Estimate Std. Error t value Pr(>|t|)
>(Intercept) 0.003398 0.103611 0.033 0.974
>error.lagged -0.968796 0.158554 -6.110 2.24e-08 ***
>dy1.1 0.808633 0.112042 7.217 1.35e-10 ***
>dy2.1 -1.058913 0.108375 -9.771 5.64e-16 ***
>---
>Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
>
>Residual standard error: 1.026 on 94 degrees of freedom
>Multiple R-Squared: 0.5464, Adjusted R-squared: 0.5319
>F-statistic: 37.74 on 3 and 94 DF, p-value: 4.243e-16
>
>> summary(ecm.dynreg)
>
>Time series regression with "ts" data:
>Start = 3, End = 100
>
>Call:
>dynlm(formula = d(y2) ~ L(error) + L(d(y1), 1) + L(d(y2), 1))
>
>Residuals:
> Min 1Q Median 3Q Max
>-2.9588 -0.5439 0.1370 0.7114 2.3065
>
>Coefficients:
> Estimate Std. Error t value Pr(>|t|)
>(Intercept) 0.003398 0.103611 0.033 0.9739
>L(error) -0.968796 0.158554 -6.110 2.24e-08 ***
>L(d(y1), 1) 0.245649 0.126996 1.934 0.0561 .
>L(d(y2), 1) -0.090117 0.105938 -0.851 0.3971
>---
>Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
>
>Residual standard error: 1.026 on 94 degrees of freedom
>Multiple R-Squared: 0.5464, Adjusted R-squared: 0.5319
>F-statistic: 37.74 on 3 and 94 DF, p-value: 4.243e-16
>
>>
>
>
>
>
>______________________________________________
>R-help at r-project.org mailing list
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide
>http://www.R-project.org/posting-guide.html
>and provide commented, minimal, self-contained, reproducible code.
>
*****************************************************************
Confidentiality Note: The information contained in this ...{{dropped:10}}
More information about the R-help
mailing list