Description Usage Arguments Examples
Find the "previous" (lag()
) or "next" (lead()
) values in a vector.
Useful for comparing values behind of or ahead of the current values.
1 2 3 |
x |
Vector of values |
n |
Positive integer of length 1, giving the number of positions to lead or lag by |
default |
Value used for non-existent rows. Defaults to |
order_by |
Override the default ordering to use another vector or column |
... |
Needed for compatibility with lag generic. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | lag(1:5)
lead(1:5)
x <- 1:5
tibble(behind = lag(x), x, ahead = lead(x))
# If you want to look more rows behind or ahead, use `n`
lag(1:5, n = 1)
lag(1:5, n = 2)
lead(1:5, n = 1)
lead(1:5, n = 2)
# If you want to define a value for non-existing rows, use `default`
lag(1:5)
lag(1:5, default = 0)
lead(1:5)
lead(1:5, default = 6)
# If data are not already ordered, use `order_by`
scrambled <- slice_sample(tibble(year = 2000:2005, value = (0:5) ^ 2), prop = 1)
wrong <- mutate(scrambled, previous_year_value = lag(value))
arrange(wrong, year)
right <- mutate(scrambled, previous_year_value = lag(value, order_by = year))
arrange(right, year)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.