Hauptinhalt

Hinzufügen und Löschen von Tabellenzeilen

Dieses Beispiel veranschaulicht, wie Zeilen in einer Tabelle hinzugefügt und gelöscht werden. Sie können Tabellen auch mithilfe des Variableneditors bearbeiten.

Laden von Beispieldaten

Laden Sie die Beispieldaten von Patienten und erstellen Sie die Tabelle T.

load patients
T = table(LastName,Gender,Age,Height,Weight,Smoker,Systolic,Diastolic);
size(T)
ans = 1×2

   100     8

Die Tabelle T enthält 100 Zeilen und 8 Variablen.

Hinzufügen von Zeilen durch Verknüpfung

Lesen Sie die Daten weiterer Patienten aus der kommagetrennten Datei morePatients.csv in die Tabelle T2. Hängen Sie dann die Zeilen aus T2 am Ende der Tabelle T an.

T2 = readtable('morePatients.csv');
Tnew = [T;T2];
size(Tnew)
ans = 1×2

   104     8

Die Tabelle Tnew enthält 104 Zeilen. Um zwei Tabellen vertikal miteinander verknüpfen zu können, müssen in beiden Tabellen die Anzahl der Variablen und die Namen dieser Variablen identisch sein. Wenn sich die Variablennamen unterscheiden, dann können Sie neue Zeilen in einer Tabelle direkt den Zeilen aus einer anderen Tabelle zuweisen. Beispiel: T(end+1:end+4,:) = T2.

Hinzufügen von Zeilen aus einem Zellenarray

Um neue Zeilen, die in einem Zellenarray gespeichert sind, anzuhängen, können Sie das Zellenarray vertikal mit dem Ende der Tabelle verknüpfen. Sie können direkt von einem Zellenarray verknüpfen, wenn das Zellenarray die richtige Anzahl Spalten enthält und der Inhalt seiner Zellen mit den entsprechenden Tabellenvariablen verknüpft werden kann.

cellPatients = {'Trujillo','Male',42,70,158,0,116,83;
                'Falk','Female',28,62,125,1,120,71};
Tnew = [Tnew;cellPatients];
size(Tnew)
ans = 1×2

   106     8

Sie können ein Zellenarray auch mithilfe der Funktion cell2table in eine Tabelle konvertieren.

Hinzufügen von Zeilen aus einer Struktur

Sie können auch neue Zeilen, die in einer Struktur gespeichert sind, anhängen. Konvertieren Sie die Struktur in eine Tabelle und verknüpfen Sie dann die Tabellen.

structPatients(1,1).LastName = 'George';
structPatients(1,1).Gender = 'Nonbinary';
structPatients(1,1).Age = 45;
structPatients(1,1).Height = 76;
structPatients(1,1).Weight = 182;
structPatients(1,1).Smoker = 1;
structPatients(1,1).Systolic = 132;
structPatients(1,1).Diastolic = 85;

structPatients(2,1).LastName = 'Russo';
structPatients(2,1).Gender = 'Female';
structPatients(2,1).Age = 29;
structPatients(2,1).Height = 58;
structPatients(2,1).Weight = 120;
structPatients(2,1).Smoker = 0;
structPatients(2,1).Systolic = 112;
structPatients(2,1).Diastolic = 70;

Tnew = [Tnew;struct2table(structPatients)];
size(Tnew)
ans = 1×2

   108     8

Weglassen von mehrfach vorhandenen Zeilen

Wenn in einer Tabelle die Zeilen, die mehrfach vorhanden sind, weggelassen werden sollen, dann verwenden Sie die Funktion unique.

Tnew = unique(Tnew);
size(Tnew)
ans = 1×2

   107     8

unique hat zwei mehrfach vorhandene Zeilen gelöscht.

Löschen von Zeilen nach Zeilennummer

Löschen Sie die Zeilen 18, 20 und 21 aus der Tabelle.

Tnew([18,20,21],:) = [];
size(Tnew)
ans = 1×2

   104     8

Jetzt enthält die Tabelle Informationen zu 103 Patienten.

Löschen von Zeilen nach Zeilenname

Geben Sie zuerst die für Kennungen definierte Variable LastName als Zeilennamen an. Löschen Sie dann die Variable LastName aus Tnew. Verwenden Sie schließlich den Zeilennamen zum Indizieren und Löschen der Zeilen.

Tnew.Properties.RowNames = Tnew.LastName;
Tnew.LastName = [];
Tnew('Smith',:) = [];
size(Tnew)
ans = 1×2

   103     7

Jetzt enthält die Tabelle eine Zeile und eine Variable weniger.

Suchen nach Zeilen, die gelöscht werden sollen

Sie können auch nach Beobachtungen in der Tabelle suchen. Zum Beispiel könnten Sie die Zeilen für alle Patienten, deren Alter unter 30 liegt, löschen.

toDelete = Tnew.Age < 30;
Tnew(toDelete,:) = [];
size(Tnew)
ans = 1×2

    86     7

Jetzt enthält die Tabelle 17 Zeilen weniger.

Siehe auch

| | | |

Themen