
Convertire una matrice in un array di celle su Matlab
In questa lezione ti spiego come trasformare una matrice in un array di celle su Matlab usando la funzione num2cell().
num2cell(M)
L'argomento M della funzione è una matrice oppure un vettore (array).
La funzione num2cell() produce in output un array di celle contenente gli stessi dati della matrice.
Nota. Per convertire una matrice in un array di celle puoi anche utilizzare la funzione mat2cell(M,r,c) ma il risultato non è lo stesso.
Ti faccio un esempio pratico.
Crea una matrice rettangolare 2x3 con due righe e tre colonne
>> M=[1 2; 3 4; 5 6]
M =
1 2
3 4
5 6
Poi digita num2cell(M) per trasformare la matrice in un array di celle.
>> A=num2cell(M)
A =
{
[1,1] = 1
[2,1] = 3
[3,1] = 5
[1,2] = 2
[2,2] = 4
[3,2] = 6
}
La funzione converte i dati in un array di celle 2x3 con gli stessi dati della matrice.
Ogni cella contiene un singolo dato.
In alternativa, puoi utilizzare la funzione mat2cell() specificando anche il numero di righe e di colonne della matrice.
Digita mat2cell(M,3,2)
>> C=mat2cell(M,3,2)
C =
{
[1,1] =
1 2
3 4
5 6
}
La funzione genera un array di celle ma l'intera matrice è memorizzata in una singola cella.

