R - diff() Function
The R diff() function returns suitably lagged and iterated differences of the argument. The syntax for using this function is given below:
Syntax
diff(x, lag = 1, differences = 1)
Parameters
x |
Required. Specify a numeric vector or matrix containing the values to be differenced. |
lag |
Optional. Specify an integer indicating which lag to use. Default is 1. |
differences |
Optional. Specify an integer indicating the order of the difference. Default is 1. |
Return Value
Returns suitably lagged and iterated differences of the argument.
Example:
The example below shows the usage of diff() function.
vec <- c(11, 22, 34, 47, 61, 76, 92, 109) cat("vec contains:", vec, "\n") #calculating diff(vec) cat("\ndiff(vec):", diff(vec), "\n") #calculating diff(diff(vec)) which is equivalent #to diff(vec, differences=2) cat("\ndiff(diff(vec)):", diff(diff(vec)), "\n") cat("diff(vec, differences=2):", diff(vec, differences=2), "\n") #calculating diff(vec, lag=2) cat("\ndiff(vec, lag=2):", diff(vec, lag=2), "\n")
The output of the above code will be:
vec contains: 11 22 34 47 61 76 92 109 diff(vec): 11 12 13 14 15 16 17 diff(diff(vec)): 1 1 1 1 1 1 diff(vec, differences=2): 1 1 1 1 1 1 diff(vec, lag=2): 23 25 27 29 31 33
Example:
Consider one more example where diff() function is used with a matrix.
mat <- matrix(c(11, 22, 34, 47, 61, 76, 92, 109, 127), nrow=3) print(mat) cat("\n") print(diff(mat))
The output of the above code will be:
[,1] [,2] [,3] [1,] 11 47 92 [2,] 22 61 109 [3,] 34 76 127 [,1] [,2] [,3] [1,] 11 14 17 [2,] 12 15 18
❮ R Statistical Functions