Ale*_*lex 3 r time-series lm zoo xts
是否有使用以下类型的xts对象运行回归的实用程序:
lm(y ~ lab(x, 1) + lag(x, 2) + lag(x,3), data=as.data.frame(coredata(my_xts)))
Run Code Online (Sandbox Code Playgroud)
where my_xts是xts包含a x和a 的对象y.问题的关键在于有没有办法避免做一堆滞后并合并以获得data.frame所有滞后?我认为该包dyn适用于zoo对象,所以我希望它以相同的方式工作,xts但尽管可能有更新的东西.
dyn和dynlm包可以使用zoo对象来实现.在dyn的情况下,只需编写dyn$lm而不是lm传递动物园对象而不是数据框.
请注意,xts中的滞后与通常的R约定相反,因此如果x是xts类,则如果x是zoo或ts类,则lag(x,1)与lag(x,-1)相同.
> library(xts)
> library(dyn)
> x <- xts(anscombe[c("y1", "x1")], as.Date(1:11)) # test data
> dyn$lm(y1 ~ lag(x1, -(1:3)), as.zoo(x))
Call:
lm(formula = dyn(y1 ~ lag(x1, -(1:3))), data = as.zoo(x))
Coefficients:
(Intercept) lag(x1, -(1:3))1 lag(x1, -(1:3))2 lag(x1, -(1:3))3
3.80530 0.04995 -0.12042 0.46631
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1786 次 |
| 最近记录: |