我的数据框有两个变量:PPCE和PDPI(例子来自Gujarati Basic Econometrics教科书)。我先运行回归:
lm(df$PPCE ~ df$PDPI) -> lm1
然后创建滞后系列od PDPI,滞后一:
c(NA, head(PDPI, -1)) -> lagged1
然后运行第二次回归:
lm(df$PPCE ~ df$PDPI + lagged1) -> lm2
当我运行anova(lm1, lm2)
以查明我是否应该包含PDPI的滞后变量时,我得到:
anova.lmlist(object,...)中的错误: 模型并非都适合相同大小的数据集
所以我的问题是,如果滞后变量应该包含在模型中,如何检查R中的anova函数?
答案 0 :(得分:0)
dyn包的anova.dyn
方法可以通过交叉来处理不同大小的拟合。它适用于动物园和ts物体。以下示例使用内置BOD
数据框。有关详细信息,请参阅dyn包文档。
library(dyn) # also loads zoo
z <- read.zoo(BOD)
lm1 <- dyn$lm(z ~ time(z))
lm2 <- dyn$lm(z ~ time(z) + lag(z, -1))
anova(lm1, lm2)