MATLAB Shift Array

Ammar Ali 30 janeiro 2023
  1. Mude um array usando a função circshift() no MATLAB
  2. Mudar um array usando os índices de array no MATLAB
MATLAB Shift Array

Este tutorial irá introduzir como deslocar um array manualmente e usando a função circshift() no MATLAB.

Mude um array usando a função circshift() no MATLAB

Se você quiser deslocar um array para a esquerda ou direita por um número específico de casas, você pode usar a função circshift(), que muda o array dado circularmente por um número específico de casas. O primeiro argumento desta função é a matriz que você deseja deslocar e o segundo é o número de casas que deseja deslocar, que pode ser o número de colunas ou o número de linhas. Se o segundo argumento for um número negativo, a matriz será deslocada para a esquerda, caso contrário, para a direita. Por exemplo, vamos definir um array de 1 a 10 inteiros e deslocá-lo para a esquerda usando a função circshift(). Veja o código abaixo.

myArray = 1:10
shifted_array = circshift(myArray,[1,-3])

Resultado:

myArray =

     1     2     3     4     5     6     7     8     9    10


shifted_array =

     4     5     6     7     8     9    10     1     2     3

O segundo argumento especifica que queremos deslocar para a esquerda a primeira linha em três lugares no código acima. Você também pode deslocar colunas se tiver um array.

Mudar um array usando os índices de array no MATLAB

Se você deseja deslocar um array para a esquerda ou direita por um número específico de lugares e um novo elemento em algum lugar na matriz, você pode usar os índices do array. Por exemplo, vamos definir um array de 1 a 10 inteiros e deslocá-la para a esquerda usando os índices do array. Veja o código abaixo.

myArray = 1:10
shifted_array = [myArray(4:end) myArray(1:3)]

Resultado:

myArray =

     1     2     3     4     5     6     7     8     9    10


shifted_array =

     4     5     6     7     8     9    10     1     2     3

No código acima, end é usado para especificar o final do array. Você também pode deslocar colunas se tiver um array. Agora, vamos deslocar o array um lugar para a esquerda e adicionar um novo elemento no final do array e deletar o primeiro elemento. Veja o código abaixo.

myArray = 1:10
element = 11
shifted_array = [myArray(2:end) element]

Resultado:

myArray =

     1     2     3     4     5     6     7     8     9    10


element =

    11


shifted_array =

     2     3     4     5     6     7     8     9    10    11

No código acima, end é usado para especificar o final do array.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artigo relacionado - MATLAB Array