base (version 3.3.1)

# diff: Lagged Differences

## Description

Returns suitably lagged and iterated differences.

## Usage

```diff(x, ...)
"diff"(x, lag = 1, differences = 1, ...)
"diff"(x, lag = 1, differences = 1, ...)
"diff"(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.

## 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.

## Details

`diff` is a generic function with a default method and ones for classes `"ts"`, `"POSIXt"` and `"Date"`.

`NA`'s propagate.

## References

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

`diff.ts`, `diffinv`.

## Examples

Run this code
``````diff(1:10, 2)
diff(1:10, 2, 2)
x <- cumsum(cumsum(1:10))
diff(x, lag = 2)
diff(x, differences = 2)

diff(.leap.seconds)
``````

Run the code above in your browser using DataLab