Ich möchte nur die reellen Zahlen aus einem Array extrahieren, das auch imaginäre Zahlen enthält Ich möchte die imaginären Zahlen aus dem Array entfernen. Daher aus einem Array von 10 Elementen, von denen 5 real und 5 imaginär, um eine Anordnung von nur 5 Elementen zu erhalten, die das reelle Zahlenelement sein muss. Dies in MATLAB
BEARBEITEN:
Hinzufügen eines Beispiels
%Vor%Die gewünschte Ausgabe wäre
%Vor% enthält nur echte Elemente von input_array
.
Sie können das mit der Funktion isreal
tun. Es stellt sich heraus, dass isreal
keine Vektorausgabe liefert, was für MATLAB seltsam ist, da dies normalerweise der Fall ist. Also, Sie müssen eine for-Schleife verwenden.
Ich nehme an, große Leute hier werden mit einer loopless Lösung kommen.
Shais Bearbeitung:
Eine Version mit Vorbelegung des Ausgabeergebnisses
%Vor%Natürlich kann dieses Ziel ohne Schleifen erreicht werden (siehe andere Antworten). Aber für diese schleimige Version ist eine Vorzuteilung eine wichtige Zutat.
Tags und Links matlab complex-numbers matrix