Concatenar matrizes no Octave
Nesta lição, nosso objetivo é desmistificar o processo de união de duas matrizes, seja horizontalmente ou verticalmente, utilizando a linguagem de programação Octave.
Primeiramente, vamos entender o que significa concatenar duas matrizes. Trata-se de uma operação que une as linhas ou colunas de duas matrizes, resultando em uma matriz maior. Para ilustrar, suponha que temos duas matrizes, $$ A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix} $$ $$ B = \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix} $$ A concatenação horizontal dessas matrizes envolve a adição das colunas da matriz B ao final da matriz A, como demonstrado a seguir: $$ A|B = \begin{pmatrix} 1 & 2 & 5 & 6 \\ 3 & 4 & 7 & 8 \end{pmatrix} $$
Vamos agora a um exemplo prático.
Começamos definindo uma matriz quadrada na variável A.
A=[1 2;3 4]
Em seguida, fazemos o mesmo para a variável B.
B=[5 6;7 8]
Para concatenar as duas matrizes horizontalmente, basta digitar o comando [A, B] ou [A B]
>> [A B]
ans =
1 2 5 6
3 4 7 8
Note que o Octave adiciona as colunas da segunda matriz após a última coluna da primeira matriz.
$$ A|B = \begin{pmatrix} 1 & 2 & 5 & 6 \\ 3 & 4 & 7 & 8 \end{pmatrix} $$
Alternativamente, podemos alcançar o mesmo resultado utilizando a função horzcat(A,B)
>> horzcat(A,B)
ans =
1 2 5 6
3 4 7 8
ou a função cat(2,A,B).
>> cat(2,A,B)
ans =
1 2 5 6
3 4 7 8
Em ambos os casos, o resultado final é o mesmo.
Importante ressaltar que a concatenação horizontal só é possível se as duas matrizes tiverem o mesmo número de linhas. O número de colunas, por outro lado, pode variar.
Agora, para concatenar as duas matrizes verticalmente, utilizamos o comando [A;B]
>> [A;B]
ans =
1 2
3 4
5 6
7 8
O símbolo ponto e vírgula é equivalente a um retorno de carro na próxima linha.
Neste caso, o Octave agrega as linhas da segunda matriz após a última linha da primeira matriz
$$ A|B = \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \\ 7 & 8 \end{pmatrix} $$
O mesmo resultado pode ser obtido utilizando a função vertcat(A,B)
>> vertcat(A,B)
ans =
1 2
3 4
5 6
7 8
ou a função cat(1,A,B)
>> cat(1,A,B)
ans =
1 2
3 4
5 6
7 8
O resultado é o mesmo.
Lembre-se, a concatenação vertical só é possível se as matrizes tiverem o mesmo número de colunas. O número de linhas, por outro lado, pode variar.
Com essas técnicas, você está equipado para concatenar duas matrizes tanto verticalmente quanto horizontalmente no Octave.
speramos que esta lição tenha sido útil para o seu aprendizado.