circshift
circshift(A,shifts)
Circularly shift the data in an array. The second argument is a vector giving the amount to shift in each dimension.
Examples

Circularly shift a 1dimensional array:
julia> arr = [1, 2, 3, 4, 5]; julia> circshift(arr, 2) 5element Array{Int64,1}: 4 5 1 2 3
This example circularly shifts the elements of the array
arr
by 2 positions to the right. 
Circularly shift a 2dimensional array:
julia> matrix = [1 2 3; 4 5 6; 7 8 9]; julia> circshift(matrix, (0, 1)) 3×3 Array{Int64,2}: 3 1 2 6 4 5 9 7 8
It circularly shifts the elements of the 2dimensional matrix
matrix
by 1 position to the right along the second dimension. 
Perform circular shift along multiple dimensions:
julia> tensor = reshape(collect(1:27), 3, 3, 3); julia> circshift(tensor, (1, 0, 1)) 3×3×3 Array{Int64,3}: [:, :, 1] = 3 6 9 2 5 8 1 4 7 [:, :, 2] = 12 15 18 11 14 17 10 13 16 [:, :, 3] = 21 24 27 20 23 26 19 22 25
This example showcases circular shifting of a 3dimensional tensor
tensor
along all dimensions.
Common mistake example:
julia> arr = [1, 2, 3, 4, 5];
julia> circshift(arr, 7)
ERROR: BoundsError: attempt to access 5element Array{Int64,1} at index [7]
In this example, the shift amount provided is greater than the size of the array. Ensure that the shift amount for each dimension is within the valid range to avoid such errors.
See Also
User Contributed Notes
Add a Note
The format of note supported is markdown, use triple backtick to start and end a code block.