
Come unire due matrici in Octave
In questa lezione ti spiego come concatenare, aggregare o unire due matrici in orizzontale oppure in verticale su Octave.
Cosa vuol dire concatenare due matrici? E' un'operazione che unisce le righe o le colonne di due matrici creando una matrice più grande. Ad esempio, hai due matrici $$ A = \begin{pmatrix} 1 & 2 \\ 3 & 4 \end{pmatrix} $$ $$ B = \begin{pmatrix} 5 & 6 \\ 7 & 8 \end{pmatrix} $$ La concatenazione in orizzontale delle matrici si ottiene aggiungendo le colonne della seconda matrice alla fine della prima matrice $$ A|B = \begin{pmatrix} 1 & 2 & 5 & 6 \\ 3 & 4 & 7 & 8 \end{pmatrix} $$
Ti faccio un esempio pratico
Definisci una matrice quadrata nella variabile A
A=[1 2;3 4]
Poi definisci una matrice quadrata nella variabile B.
B=[5 6;7 8]
Ora concatena le due matrici in orizzontale digitando il comando [A,B] oppure [A B]
>> [A B]
ans =
1 2 5 6
3 4 7 8
Octave aggiunge le colonne della seconda matrice dopo l'ultima colonna della prima matrice.
$$ A|B = \begin{pmatrix} 1 & 2 & 5 & 6 \\ 3 & 4 & 7 & 8 \end{pmatrix} $$
In alternativa, puoi anche utilizzare la funzione horzcat(A,B)
>> horzcat(A,B)
ans =
1 2 5 6
3 4 7 8
oppure il comando cat(2,A,B)
>> cat(2,A,B)
ans =
1 2 5 6
3 4 7 8
Il risultato finale è lo stesso.
Nota. Puoi aggregare due matrici in orizzontale solo se le due matrici hanno lo stesso numero di righe. Il numero di colonne può anche essere diverso.
Adesso concatena le due matrici in verticale digitando il comando [A;B]
>> [A;B]
ans =
1 2
3 4
5 6
7 8
Il simbolo del punto e virgola equivale a un ritorno a capo sulla riga successiva.
In questo caso Octave aggrega le righe della seconda matrice dopo l'ultima riga della prima matrice.
$$ A|B = \begin{pmatrix} 1 & 2 \\ 3 & 4 \\ 5 & 6 \\ 7 & 8 \end{pmatrix} $$
In alternativa, puoi ottenere lo stesso risultato usando la funzione vertcat(A,B)
>> vertcat(A,B)
ans =
1 2
3 4
5 6
7 8
oppure il comando cat(1,A,B)
>> cat(1,A,B)
ans =
1 2
3 4
5 6
7 8
Il risultato finale è sempre lo stesso.
Nota. Puoi aggregare due matrici in verticale solo se hanno lo stesso numero di colonne. Il numero delle righe può essere anche diverso.
In questo modo puoi concatenare due matrici sia in verticale che in orizzontale su Octave.