lag.zoo {zoo} R Documentation

## Lags and Differences of zoo Objects

### Description

Methods for computing lags and differences of `"zoo"` objects.

### Usage

```## S3 method for class 'zoo':
lag(x, k = 1, na.pad = FALSE, ...)
## S3 method for class 'zoo':
diff(x, lag = 1, differences = 1, arithmetic = TRUE, na.pad = FALSE, ...)
```

### Arguments

 `x` a `"zoo"` object. `k, lag` the number of lags (in units of observations). Note the sign of `k` behaves as in `lag`. `differences` an integer indicating the order of the difference. `arithmetic` logical. Should arithmetic (or geometric) differences be computed? `na.pad` logical. If `TRUE` it adds any times that would not otherwise have been in the result with a value of `NA`. If `FALSE` those times are dropped. `...` currently not used.

### Details

These methods for `"zoo"` objects behave analogously to the default methods. The only additional arguments are `arithmetic` in `diff` `na.pad` in `lag.zoo` which can also be specified in `diff.zoo` as part of the dots. Also, `"k"` can be a vector of lags in which case the names of `"k"`, if any, are used in naming the result.

### Value

The lagged or differenced `"zoo"` object.

### Note

Note the sign of `k`: a series lagged by a positive `k` is shifted earlier in time.

`zoo`, `lag`, `diff`

### Examples

```x <- zoo(11:21)

lag(x, k = 1)
lag(x, k = -1)
# this pairs each value of x with the next or future value
merge(x, lag1 = lag(x, k=1))
diff(x^2)