Importazione di file di testo
MATLAB® può leggere e scrivere dati numerici e non numerici da file di testo delimitati e formattati, compresi i file .csv
e .txt
. I file di testo contengono spesso una combinazione di dati numerici e di testo, nonché nomi di variabili e di righe. È possibile rappresentare questi dati in MATLAB come tabelle, orari, matrici, array di celle o array di stringhe.
Importare i dati dai file di testo in modo programmatico o interattivo. Importare in modo programmatico per utilizzare funzioni di importazione personalizzate e controllare ulteriormente il modo in cui i dati vengono importati utilizzando le opzioni di importazione. Importare in modo interattivo per utilizzare Import Tool e la relativa interfaccia utente.
Importazione di dati come tabelle
Se il file di testo contiene dati tabellari, è possibile importare i dati come tabella. Una table
è costituita da variabili orientate alle colonne contenenti righe di dati dello stesso tipo. Ciascuna variabile in una tabella può contenere dati di tipo e grandezza diversi; tuttavia, tutte le variabili devono avere lo stesso numero di righe. Per maggiori informazioni sulle tabelle, vedere Creazione di tabelle e assegnazione dei relativi dati.
Importare dati tabellari da un file di testo in una tabella utilizzando la funzione readtable
con il nome del file. Ad esempio, creare una tabella dal file di esempio airlinesmall.csv
.
T = readtable('airlinesmall.csv');
Visualizzare le prime cinque righe e colonne della tabella.
T(1:5,1:5)
ans = 5×5 table Year Month DayofMonth DayOfWeek DepTime ____ _____ __________ _________ ________ 1987 10 21 3 {'642' } 1987 10 26 1 {'1021'} 1987 10 23 5 {'2055'} 1987 10 23 5 {'1332'} 1987 10 22 4 {'629' }
Importazione di dati come orari
Se il file di testo contiene dati tabellari dove ogni riga è associata a un'ora, è possibile importare i dati come orario. Come le tabelle, gli orari consentono di memorizzare variabili di dati tabellari che possono avere tipi di dati e grandezze diversi, purché abbiano lo stesso numero di righe. Inoltre, un orario fornisce funzioni specifiche per il valore temporale per allineare, combinare ed eseguire calcoli con dati contrassegnati da valori temporali in uno o più orari. Per maggiori informazioni sugli orari, vedere Create Timetables.
Importare dati tabellari da un file di testo in un orario utilizzando la funzione readtimetable
. Ad esempio, creare un orario dal file di esempio outages.csv
.
TT = readtimetable('outages.csv');
Visualizzare le prime cinque righe e colonne dell'orario.
TT(1:5,1:5)
ans = 5×5 timetable OutageTime Region Loss Customers RestorationTime Cause ________________ _____________ ______ __________ ________________ ___________________ 2002-02-01 12:18 {'SouthWest'} 458.98 1.8202e+06 2002-02-07 16:50 {'winter storm' } 2003-01-23 00:49 {'SouthEast'} 530.14 2.1204e+05 NaT {'winter storm' } 2003-02-07 21:15 {'SouthEast'} 289.4 1.4294e+05 2003-02-17 08:14 {'winter storm' } 2004-04-06 05:44 {'West' } 434.81 3.4037e+05 2004-04-06 06:10 {'equipment fault'} 2002-03-16 06:18 {'MidWest' } 186.44 2.1275e+05 2002-03-18 23:23 {'severe storm' }
Importazione di dati come matrici
Se il file di testo contiene dati uniformi (tutti dello stesso tipo), è possibile importare i dati come matrice. L'importazione dei dati in una matrice consente di lavorare con un array formattato in modo minimo.
Importare dati tabellari da un file di testo in una matrice utilizzando readmatrix
. Ad esempio, importare i dati dal file di esempio basic_matrix.txt
in una matrice.
M = readmatrix('basic_matrix.txt')
M = 5×4 6 8 3 1 5 4 7 3 1 6 7 10 4 2 8 2 2 7 5 9
Importazione di dati come array di celle
Un array di celle è un tipo di dati con contenitori di dati indicizzati chiamati celle, dove ogni cella può contenere qualsiasi tipo di dati. Gli array di celle contengono comunemente elenchi di testo, combinazioni di testo e numeri o array numerici di grandezze diverse.
È possibile importare dati non uniformi (ogni colonna ha un tipo di dati diverso) da un file di testo in un array di celle utilizzando readcell
. Ad esempio, visualizzare il contenuto di basic_cell.txt
, quindi importare i dati misti in un array di celle.
type basic_cell.txt
1,2,3 hello,world,NaN 10-Oct-2018 10:27:56,1,
C = readcell('basic_cell.txt')
C=3×3 cell array {[ 1]} {[ 2]} {[ 3]} {'hello' } {'world'} {[ NaN]} {[10-Oct-2018 10:27:56]} {[ 1]} {1x1 missing}
textscan
e un workflow I/O a basso livello. I workflow I/O a basso livello consentono il massimo controllo sull'importazione dei dati. La maggior parte dei workflow non necessita di questo grado di controllo. Per ulteriori informazioni sull'importazione di dati di testo con I/O a basso livello, vedere Import Text Data Files with Low-Level I/O.Importazione dei dati come array di stringhe
Se il file di testo contiene righe di testo semplice, è possibile rappresentarlo in MATLAB come un array di stringhe. Gli array di stringhe memorizzano parti di testo e forniscono un insieme di funzioni per lavorare con il testo come dati. Ad esempio, è possibile indicizzare, rimodellare e concatenare gli array di stringhe esattamente come si farebbe con gli array di qualsiasi altro tipo.
Importare le righe di testo semplice da un file di testo in array di stringhe utilizzando readlines
. Ad esempio, creare un array di stringhe dal file di testo di esempio badpoem.txt
. Poiché il file di testo contiene quattro righe di testo semplice, la funzione crea un array di stringhe 4x1.
lines = readlines("badpoem.txt")
lines = 4x1 string "Oranges and lemons," "Pineapples and tea." "Orangutans and monkeys," "Dragonflys or fleas."
Importazione di dati con opzioni di importazione per un controllo ulteriore
L'importazione di dati tabulari richiede talvolta un ulteriore controllo sul processo di importazione. Per personalizzare il processo di importazione, è possibile creare un oggetto Opzioni di importazione. L'oggetto presenta delle proprietà che possono essere regolate in base alle esigenze di importazione. Ad esempio, è possibile modificare i tipi di dati delle variabili o importare solo un sottoinsieme di variabili. Per maggiori informazioni sulle opzioni di importazione, vedere detectImportOptions
.
Importazione di dati in modo interattivo
Se si preferisce utilizzare l'interfaccia utente, è possibile importare i dati in modo interattivo in una tabella o in un altro tipo di dati utilizzando Import Tool.
Per aprire Import Tool, all'interno della scheda Home, nella sezione Variable, fare clic su Import Data . In alternativa, fare clic con il tasto destro del mouse sul nome del file nel pannello File e selezionare Import Data. Quindi, selezionare il file che si desidera importare. Utilizzando la finestra Import Tool, impostare le opzioni di importazione, quindi fare clic su Import Selection per importare i dati in MATLAB. Per maggiori informazioni, vedere Read Text File Data Using Import Tool.
Vedi anche
Import Tool | readtable
| table
| readtimetable
| readmatrix
| readcell
| readlines
| textscan
| detectImportOptions