Extract or replace the ultimate (last) element of a vector or a list, or an element counting from the end.

ult(x, i = 1L)

ult(x, i = 1L) <- value

Arguments

x

a vector or a list.

i

index from the end of the list to extract or replace (where 1 is the last element, 2 is the penultimate element, etc.).

value

Replacement value for the ith element from the end.

Value

An element of x.

Note

Due to the way in which assigning to a function is implemented in R, ult(x) <- e may be less efficient than x[[length(x)]] <- e.

Examples

x <- 1:5
(last <- ult(x))
#> [1] 5
(penultimate <- ult(x, 2)) # 2nd last.
#> [1] 4


(ult(x) <- 6)
#> [1] 6
(ult(x, 2) <- 7) # 2nd last.
#> [1] 7
x
#> [1] 1 2 3 7 6