Hauptinhalt

Importieren von Textdateien

MATLAB® kann numerische und nicht-numerische Daten aus Textdateien mit Trennzeichen und formatierten Textdateien lesen und schreiben, einschließlich .csv- und .txt-Dateien. Textdateien enthalten oft eine Mischung aus numerischen Daten und Textdaten sowie Variablen- und Zeilennamen. Sie können diese Daten in MATLAB als Tabellen, Timetables, Matrizen, Zellen-Arrays oder String Arrays darstellen.

Importieren Sie Daten aus Textdateien entweder programmatisch oder interaktiv. Importieren Sie programmatisch, um maßgeschneiderte Importfunktionen zu verwenden, und steuern Sie mithilfe von Importoptionen, wie Ihre Daten importiert werden. Importieren Sie interaktiv mit dem Import Tool und seiner Benutzeroberfläche.

Importieren von Daten als Tabelle

Falls Ihre Textdatei tabellarische Daten enthält, können Sie die Daten als Tabelle importieren. Eine Tabelle (table) besteht aus spaltenorientierten Variablen, die Zeilen mit Daten desselben Typs enthalten. Jede Variable in einer Tabelle kann einen anderen Datentyp und eine andere Größe haben, aber jede Variable muss die gleiche Anzahl von Zeilen haben. Weitere Informationen über Tabellen finden Sie unter Tabellen erstellen und ihnen Daten zuweisen.

Importieren Sie tabellarische Daten aus einer Textdatei in eine Tabelle, indem Sie die readtable-Funktion mit dem Dateinamen verwenden. Erstellen Sie zum Beispiel aus der Beispieldatei airlinesmall.csv eine Tabelle.

T = readtable('airlinesmall.csv');

Zeigen Sie die ersten fünf Zeilen und Spalten der Tabelle an.

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' }

Importieren von Daten als Timetables

Falls Ihre Textdatei tabellarische Daten enthält, bei denen jede Zeile mit einer Uhrzeit verknüpft ist, können Sie die Daten als Timetable importieren. Wie bei Tabellen können Sie in Timetables tabellarische Datenvariablen speichern, die unterschiedliche Datentypen und Größen haben können, sofern sie die gleiche Anzahl von Zeilen haben. Darüber hinaus bieten Timetables zeitabhängige Funktionen zum Abgleichen und Kombinieren zeitgestempelter Daten aus einem oder mehreren Timetables und zum Ausführen von Berechnungen mit diesen Daten. Weitere Informationen zu Timetables finden Sie unter Create Timetables.

Importieren Sie tabellarische Daten aus einer Textdatei in eine Timetable, indem Sie die readtimetable-Funktion verwenden. Erstellen Sie zum Beispiel aus der Beispieldatei outages.csv eine Timetable.

TT = readtimetable('outages.csv');

Zeigen Sie die ersten fünf Zeilen und Spalten der Timetable an.

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'   }

Importieren von Daten als Matrizen

Wenn eine Textdatei einheitliche Daten enthält (alle vom gleichen Typ sind), können Sie die Daten als Matrix importieren. Wenn Sie die Daten in eine Matrix importieren, können Sie mit einem minimal formatierten Array arbeiten.

Importieren Sie tabellarische Daten aus einer Textdatei mit readmatrix in eine Matrix. Importieren Sie zum Beispiel die Daten aus der Beispieldatei basic_matrix.txt in eine Matrix.

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

Importieren von Daten als Zellen-Arrays

Ein Zellen-Array ist ein Datentyp mit indizierten Datencontainern, die Zellen genannt werden, wobei jede Zelle Daten eines beliebigen Typs enthalten kann. Zellenarrays enthalten meist entweder Textlisten, Kombinationen aus Texten und Zahlen oder numerische Arrays verschiedener Größe.

Uneinheitliche Daten (bei denen jede Spalte einen anderen Typ hat) können Sie mit readcell aus einer Textdatei in ein Zellen-Array importieren. Zeigen Sie zum Beispiel den Inhalt von basic_cell.txt an und importieren Sie dann die gemischten Daten in ein Zellen-Array.

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}
Alternativ dazu können Sie formatierte Daten aus einer Textdatei in ein Zellen-Array importieren, indem Sie die textscan-Funktion und einen Low-Level-I/O-Workflow verwenden. Low-Level-I/O-Workflows ermöglichen die größtmögliche Kontrolle beim Importieren von Daten. Dieses Maß an Kontrolle ist für die meisten Workflows nicht erforderlich. Weitere Informationen zum Importieren von Textdaten mit Low-Level-I/O finden Sie unter Import Text Data Files with Low-Level I/O.

Importieren von Daten als String Arrays

Wenn Ihre Textdatei Zeilen mit einfachem Text enthält, können Sie den einfachen Text in MATLAB als ein String Array darstellen. String Arrays speichern Textstücke und bieten eine Reihe von Funktionen für die Arbeit mit Text als Daten. So können Sie beispielsweise String Arrays genauso indizieren, umformen und verknüpfen, wie Sie es mit Arrays jedes anderen Typs können.

Importieren Sie Zeilen mit einfachem Text mit readlines aus einer Textdatei in String Arrays. Erstellen Sie zum Beispiel ein String Array aus der Beispiel-Textdatei badpoem.txt. Da die Textdatei vier Zeilen reinen Text enthält, erstellt die Funktion ein 4×1-String Array.

lines = readlines("badpoem.txt")
lines = 4x1 string
    "Oranges and lemons,"
    "Pineapples and tea."
    "Orangutans and monkeys,"
    "Dragonflys or fleas."

Datenimport mit Importoptionen für zusätzliche Kontrolle

Beim Import von Tabellendaten ist manchmal eine zusätzliche Kontrolle über den Importprozess erforderlich. Zur Anpassung des Importvorgangs können Sie ein Objekt mit Importoptionen erstellen. Das Objekt verfügt über Eigenschaften, die Sie je nach Ihren Importanforderungen anpassen können. Sie können zum Beispiel den Datentyp einer Variable ändern oder nur eine Teilmenge von Variablen importieren. Weitere Informationen über Importoptionen finden Sie unter detectImportOptions.

Interaktiver Datenimport

Wenn Sie lieber die Benutzeroberfläche verwenden möchten, können Sie mit dem Befehl Import Tool Daten interaktiv in eine Tabelle oder einen anderen Datentyp importieren.

Klicken Sie zum Öffnen des Import Tool innerhalb der Registerkarte Home im Abschnitt Variable auf Import Data . Alternativ dazu können Sie auch auf den Namen der Datei im Dateienfenster rechtsklicken und Import Data auswählen. Wählen Sie dann die Datei aus, die Sie importieren möchten. Legen Sie im Import Tool-Fenster die Importoptionen fest und klicken Sie dann auf Import Selection, um die Daten in MATLAB zu importieren. Weitere Informationen finden Sie unter Read Text File Data Using Import Tool.

grades.txt is a sample file used to portray the Import Tool.

Siehe auch

| | | | | | | |

Themen