主要内容

circshift

循环移位阵列

描述

例子

Y = circshift(一个K循环移位数组中的元素一个通过K的位置。如果K是整数吗circshift的第一个维度平移一个它的大小不等于1。如果K是一个整数向量,那么的每个元素K的对应维度的移位量一个

请注意

的默认行为circshift (K)在哪里K为R2016b中变化的标量。要保留R2016a和以前版本的行为,请使用circshift (K, 1).该语法指定1作为要进行操作的维度。

例子

Y = circshift(一个K昏暗的循环移位数组中的值一个通过K沿维度的位置昏暗的.输入K而且昏暗的一定是标量。

例子

全部折叠

创建一个数值列向量。

A = (1:10)'
一个=10×11 2 3 4 5 6 7 8 9 10

使用circshift把元素移三个位置。

Y = circshift(A,3)
Y =10×18 9 10 1 2 3 4 5 6 7

结果,Y的元素相同一个但它们的顺序不同。

创建一个字符数组并使用circshift将字符移动3个位置。书中人物的顺序不同Y

一个=“赛车”;Y = circshift(A,3)
Y = 'carrace'

创建一个数字数组,在左上角有一个集群。

A = [1 1 0 0;1 1 100 0;0 0 0 0;0 0 0 0]
一个=4×41 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0

使用circshift移动的每一行一个右边一个位置。

Y = circshift(A,1,2)
Y =4×40 1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0

改变元素一个每个维度的一个位置。1的集合现在在矩阵的中心。

Y = circshift(A,[1 1])
Y =4×40 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0

若要将群集移回其原始位置,请使用circshiftYshift值为负。矩阵X等于一个

X = circshift(Y,[-1 -1])
X =4×41 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0

输入参数

全部折叠

输入数组,指定为矢量、矩阵或多维数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|结构体|表格|细胞
复数支持:金宝app是的

移位量,指定为整数标量或整数向量。

  • 如果你指定K作为整数,不指定昏暗的,然后circshift沿着大小不等于1的第一个维度移动。积极的K移向维度的末尾,并为负K转向开头。

  • 如果你指定K作为一个整数向量,那么N第Th元素K属性的移位量N第Th维一个.如果N第Th元素K是正的,那么的值一个转向最后N维度。如果N第Th元素为负,则值向开头移动。

如果位移量大于中相应维度的长度一个,然后将移位循环包裹到该维度的开始。例如,将一个含有3个元素的向量移动+3个位置,可以使其元素回到原来的位置。

操作的维度,指定为正整数标量。如果未指定值,则默认为大小不等于1的第一个维度。如果你指定昏暗的,然后K必须为整数标量。一般来说,请指定Dim = 1为了交换行,Dim = 2交换列,等等。

扩展功能

GPU代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

R2006a之前介绍