lettura facile

Come creare un file con i campi delimitati su Matlab

In questa lezione di Matlab ti spiego come si crea un file di testo con dati numerici separati da un delimitatore.

A cosa serve? I file con dati numerici delimitati sono molto utili per archiviare e esportare i dati in formato ASCII da un software a un altro.

Ti faccio un esempio pratico.

Definisci una matrice

>> M = [1 2 3; 4 5 6; 7 8 9 ];

Per salvare la matrice in un file con i dati separati da un delimitatore usa la funzione dlmwrite().

dlmwrite('nomefile.txt',M,';')

La funzione dlmwrite() ha tre parametri obbligatori

  • Il nome del file dove salvare i dati
  • La variabile che contiene i dati
  • Il carattere da usare come delimitatore

Questa funzione salva la matrice in un file di testo sul disco fisso del PC.

In questo caso, in ogni record (riga) del file i dati numerici sono separati con un punto e virgola ";".

il contenuto del file

Ora azzera la memoria di Matlab con la funzione clear.

>> clear

L'oggetto M non è più in memoria.

Se provi a richiamarlo Matlab restituisce un messaggio di errore.

>> M
Unrecognized function or variable 'M'.

Per leggere l'oggetto M dal file e caricarlo in memoria, usa la funzione dlmread()

>> X=dlmread('nomefile.txt', ';')

La funzione dmlread() ha due parametri obbligatori

  • Il nome del file di testo dove si trovano i dati
  • Il carattere usato come delimitatore

Matlab legge i dati presenti nel file di testo e li assegna alla variabile array X.

Attenzione. Per caricare i dati devi indicare lo stesso carattere delimitatore che hai usato per salvare i dati nel file. In questo caso il carattere delimitatore è il punto e virgola.

Ora, digita X sulla riga di comando e premi invio.

>> X

X =

1 2 3
4 5 6
7 8 9

La variabile X è nell'area di lavoro di Matlab e contiene gli stessi dati della matrice M.

In questo modo puoi salvare qualsiasi matrice numerica in un file e caricare i dati in un momento successivo.

Nota. In questo esempio hai creato un file usando come delimitatore il punto e virgola ";". Puoi anche creare file di testo separando i dati con un altro carattere. Non solo il punto e virgola. Ad esempio, puoi usare come delimitatore la virgola ",". Per farlo ti basta modificare il terzo parametro della funzione dlmwrite() e il secondo parametro della funzione dlmread().




Se qualcosa non ti è chiaro, scrivi la tua domanda nei commenti.




FacebookTwitterLinkedinLinkedin