Entfernen von Elementen aus einem Struktur-Array in Matlab

8

Ich habe ein sehr großes Struktur-Array in Matlab. Nehmen wir an, um der Sache willen, um die Situation zu vereinfachen, habe ich etwas wie:

%Vor%

Nun nehme ich an, ich habe eine Bedingung, die dazu führt, dass ich alles aus structure(2) (alle Einträge in meinem Struktur-Array) löschen möchte. Was ist ein guter Weg, das zu tun?

Meine Lösung bestand darin, die entsprechenden Felder einfach auf [] (z. B. structure(1).name = []; ) zu setzen, aber das entfernt sie nicht, sodass sie nur leer sind. Wie entferne ich sie wirklich komplett aus dem Struktur-Array? Gibt es einen Weg?

    
A. Masssey 04.12.2012, 08:38
quelle

1 Antwort

12

Einfach, wenn Sie Element im Index i löschen wollen, machen Sie folgendes:

%Vor%

Und das wird Element am Index 3 entfernen.

Beispiel:

%Vor%

Jetzt:

%Vor%

Wenn wir Folgendes ausführen:

%Vor%

dann ist der neue Wert des Arrays von Strukturen:

%Vor%

Probieren Sie es aus!

    
Sameh Kamal 04.12.2012, 08:44
quelle

Tags und Links