Shift Vector Left/Right

Usage

shift(x, n, direction = "right")
shift_right(x, n)
shift_left(x, n)

Arguments

x
A vector.
n
The number of moves left or right to shift.
direction
A direction to shift; must be either "left" or "right". Use explicit directional shift functions shift_right and shift_left for better performance.

Value

Returns a shifted vector.

Description

Shift a vector left or right n spaces.

Examples

lapply(0:9, function(i) shift(1:10, i))
[[1]] [1] 1 2 3 4 5 6 7 8 9 10 [[2]] [1] 2 3 4 5 6 7 8 9 10 1 [[3]] [1] 3 4 5 6 7 8 9 10 1 2 [[4]] [1] 4 5 6 7 8 9 10 1 2 3 [[5]] [1] 5 6 7 8 9 10 1 2 3 4 [[6]] [1] 6 7 8 9 10 1 2 3 4 5 [[7]] [1] 7 8 9 10 1 2 3 4 5 6 [[8]] [1] 8 9 10 1 2 3 4 5 6 7 [[9]] [1] 9 10 1 2 3 4 5 6 7 8 [[10]] [1] 10 1 2 3 4 5 6 7 8 9
lapply(0:9, function(i) shift(1:10, i, "left"))
[[1]] [1] 1 2 3 4 5 6 7 8 9 10 [[2]] [1] 10 1 2 3 4 5 6 7 8 9 [[3]] [1] 9 10 1 2 3 4 5 6 7 8 [[4]] [1] 8 9 10 1 2 3 4 5 6 7 [[5]] [1] 7 8 9 10 1 2 3 4 5 6 [[6]] [1] 6 7 8 9 10 1 2 3 4 5 [[7]] [1] 5 6 7 8 9 10 1 2 3 4 [[8]] [1] 4 5 6 7 8 9 10 1 2 3 [[9]] [1] 3 4 5 6 7 8 9 10 1 2 [[10]] [1] 2 3 4 5 6 7 8 9 10 1
## Explicit, faster shifting lapply(0:9, function(i) shift_right(1:10, i))
[[1]] [1] 1 2 3 4 5 6 7 8 9 10 [[2]] [1] 2 3 4 5 6 7 8 9 10 1 [[3]] [1] 3 4 5 6 7 8 9 10 1 2 [[4]] [1] 4 5 6 7 8 9 10 1 2 3 [[5]] [1] 5 6 7 8 9 10 1 2 3 4 [[6]] [1] 6 7 8 9 10 1 2 3 4 5 [[7]] [1] 7 8 9 10 1 2 3 4 5 6 [[8]] [1] 8 9 10 1 2 3 4 5 6 7 [[9]] [1] 9 10 1 2 3 4 5 6 7 8 [[10]] [1] 10 1 2 3 4 5 6 7 8 9
lapply(0:9, function(i) shift_left(1:10, i))
[[1]] [1] 1 2 3 4 5 6 7 8 9 10 [[2]] [1] 10 1 2 3 4 5 6 7 8 9 [[3]] [1] 9 10 1 2 3 4 5 6 7 8 [[4]] [1] 8 9 10 1 2 3 4 5 6 7 [[5]] [1] 7 8 9 10 1 2 3 4 5 6 [[6]] [1] 6 7 8 9 10 1 2 3 4 5 [[7]] [1] 5 6 7 8 9 10 1 2 3 4 [[8]] [1] 4 5 6 7 8 9 10 1 2 3 [[9]] [1] 3 4 5 6 7 8 9 10 1 2 [[10]] [1] 2 3 4 5 6 7 8 9 10 1
lapply(0:25, function(i) shift_left(LETTERS, i))
[[1]] [1] "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" [[2]] [1] "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" [[3]] [1] "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" [[4]] [1] "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" [[5]] [1] "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" [[6]] [1] "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" [[7]] [1] "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" [[8]] [1] "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" [[9]] [1] "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" [[10]] [1] "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" [[11]] [1] "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" [[12]] [1] "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" [[13]] [1] "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" [[14]] [1] "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" [[15]] [1] "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" [[16]] [1] "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" [[17]] [1] "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" [[18]] [1] "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" "I" [[19]] [1] "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" "H" [[20]] [1] "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" "G" [[21]] [1] "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" "F" [[22]] [1] "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" "E" [[23]] [1] "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" "D" [[24]] [1] "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" "C" [[25]] [1] "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A" "B" [[26]] [1] "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "A"