R: Lagged Differences

diff {base} | R Documentation

## Lagged Differences

### Description

Returns suitably lagged and iterated differences.

### Usage

    diff(x, ...)
    diff.default(x, lag=1, differences=1, ...)

### Arguments

`x` | a numeric vector or matrix containing the values to be differenced.
`lag` | an integer indicating which lag to use.
`differences` | an integer indicating the order of the difference.
`...` | further arguments to be passed to or from methods.

### Details

`diff` is a generic function with a default method and one for class `ts` objects. `NA`'s propagate.

### Value

If `x` is a vector of length `n` and `differences=1`, then the computed result is equal to the successive differences `x[(1+lag):n] - x[1:(n-lag)]`.
If `difference` is larger than one this algorithm is applied recursively to `x`. Note that the returned value is a vector which is shorter than `x`.
If `x` is a matrix then the difference operations are carried out on each column separately.

### See Also

`diff.ts`.

### Examples

    diff(1:10, 2)
    diff(1:10, 2, 2)
    x <- cumsum(cumsum(1:10))
    stopifnot(diff(x, lag = 2) == x[(1+2):10] - x[1:(10 - 2)],
              diff(x, lag = 2) == (3:10)^2,
              diff(diff(x))    == diff(x, differences = 2))

[Package Contents]