Re: [R] How to use "lag"?

From: Gabor Grothendieck <ggrothendieck_at_myway.com>
Date: Sun 06 Mar 2005 - 04:24:53 EST

Dirk Eddelbuettel <edd <at> debian.org> writes:

>
> Spencer,
>
> You may want to peruse the list archive for posts that match 'ts' and are
> written by Brian Ripley -- these issues have come up before.
>
> The ts class is designed for arima and friends (like Kalman filtering), and
> very useful in that context, but possibly not so much anywhere else. lag()
> only shifts the _reference dates_ attached to the object. So in a data.frame
> context (as for lm()) .... nothing happens.
>
> Personally, I use its as my main container for daily or weekly data. There is
> also zoo, which I have meant to examine more closely for a while now.

Here is the example redone using zoo:

R> # here it is redone using zoo objects
R> 
R> # following 3 lines are from the original post
R> set.seed(1)
R> x <- rep(c(rep(0, 4), 9), len=9)
R> y <- (rep(c(rep(0, 5), 9), len=9)+rnorm(9)) # y[t] = x[t-1]+e
R> 
R> library(zoo)
R> 
R> yz <- zoo(y); xz <- zoo(x)
R> lm(I(yz ~ xz))

Call:
lm(formula = I(yz ~ xz))

Coefficients:

(Intercept)           xz  
     1.2872      -0.1064  

R> lm(I(yz ~ lag(xz, -1)))

Call:
lm(formula = I(yz ~ lag(xz, -1)))

Coefficients:
(Intercept) lag(xz, -1)

     0.4392 0.8600

R> 
R> z <- merge(yz, xz)
R> arima(coredata(z[,1]), order = c(1,1,1), xreg = coredata(z[,2]))

Call:
arima(x = coredata(z[, 1]), order = c(1, 1, 1), xreg = coredata(z[, 2]))

Coefficients:

         ar1      ma1  coredata(z[, 2])
      0.3906  -1.0000           -0.3803
s.e.  0.4890   0.4119            0.3753

sigma^2 estimated as 7.565: log likelihood = -20.2, aic = 48.4  

R> zz <- merge(yz, lag(xz, -1))
R> arima(coredata(zz[,1]), order = c(1,1,1), xreg = coredata(zz[,2]))

Call:
arima(x = coredata(zz[, 1]), order = c(1, 1, 1), xreg = coredata(zz[, 2]))

Coefficients:

          ar1      ma1  coredata(zz[, 2])
      -0.2991  -0.8252             0.8537
s.e.   0.4516   1.0009             0.0838

sigma^2 estimated as 0.444: log likelihood = -7.9, aic = 23.8



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Sun Mar 06 04:57:17 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:30:41 EST