Die isnumerische Funktion in MATLAB

Die isnumerische Funktion in MATLAB
Nachdem wir den Datentyp kennen. Es kann Fehler oder unerwartetes Verhalten aufgrund von Datenkompatibilität vermeiden.

In diesem Linux -Hinweis -Artikel lernen Sie, wie Sie die Funktion von Matlab isnumeric () verwenden, um festzustellen, ob eine Matrix numerisch ist. Wir erklären alles, was Sie über die Verwendung dieser Funktion wissen müssen: seine Eingabe- und Ausgabeargumente, die Art der Daten, die es akzeptiert, usw.

Darüber hinaus finden Sie Bilder und praktische Beispiele mit Code -Snippets und Funktionsaufrufen mit unterschiedlichen Datentypen und Arrays.

MATLAB isnumeric () Funktionssyntax

r = isnumerisch (x)

Beschreibung der MATLAB isnumeric () -Funktion

Die Funktion isnumeric () gibt ein logisches Ergebnis in „R“ zurück. 1 Wenn das Skalar „X“ oder alle Elemente des Vektors oder der Matrix seiner Eingabeberechtigung numerische Werte haben. Eine logische 0 entsteht, wenn der Skalar oder ein Element eines Vektors oder einer Matrix nicht numerische Daten enthält.

Das „ist… .Funktionen sind eine Reihe von MATLAB -Funktionen zur Bestimmung des Datentyps eines Arrays.

So bestimmen

In diesem Beispiel werden wir sehen, wie die Funktion isnumeric () verwendet wird, um festzustellen, ob ein Skalar numerisch ist. Dazu verwenden wir die MATLAB -Befehlskonsole und erstellen das Skalar „X“, indem wir ihm einen Wert, Zeichen oder einen anderen Datentyp zuweisen. Dann nennen wir die Funktion isnumereric () und senden „X“ als Eingabebuchung. Die Ausgabe "R" ist der logische Wert 1, wenn er numerisch ist und 0, wenn dies nicht der Fall ist. Das folgende Bild ist ein Code -Snippet, das die Ergebnisse anzeigt, wenn wir einen numerischen Wert und ein Zeichen als Eingabemittel senden:

x = 88;
r = isnumerisch (x)
x = 'a';
r = isnumerisch (x)

So bestimmen

Jetzt werden wir sehen, wie die Werte in den Elementen eines Vektors numerisch sind. Dazu erstellen wir den Vektor „X“ in der Befehlszeile und rufen die Funktion isnumeric () wie folgt auf:

x = [8, -9, 58, 62, 0, 77];
r = isnumerisch (x)

Wie in der folgenden Abbildung gezeigt, gibt isnumeric () ein einzelnes logisches Ergebnis zurück, das von allen Vektorelementen bestimmt wird:

So bestimmen

In diesem Beispiel werden wir feststellen, wie die Werte in den Elementen eines Arrays numerisch sind. Dazu erstellen wir das Array „X“ in der Befehlszeile und rufen die Funktion isnumeric () auf.

x = [8, -9, 58, 62;
55, 84, Nan, 99;
44, 'J', 56, 'O';
74, 14, Inf, Nan];
r = isnumerisch (x)

Wie in der folgenden Abbildung gezeigt, gibt isnumeric () ein einzelnes logisches Ergebnis zurück, das von allen Array -Elementen bestimmt wird:

Die MATLAB isnumerische Funktion in Bedingungen, wenn

Wie bereits in diesem Artikel erläutert, werden diese Funktionen in bedingten Ausdrücken häufig verwendet. Dies ist im Code für viele Funktionen in der MATLAB -Bibliothek zu sehen, in der die durchgeführte spezifische Verarbeitung von der Art der Daten hängt, die in den Eingabeargumenten gesendet werden.

In diesem Beispiel werden wir eine Funktion erstellen, die zwei grundlegende Operationen ausführt, die Aufteilung von A by B, die auch das Ergebnis dieser Operation einerseits zurückgibt, und den Rest nach der Aufteilung andererseits, was eine Funktion mit ist zwei Eingänge und zwei Ausgänge. Als nächstes werden wir den Code dieser Funktion sehen.

Funktion [d, r] = expl_1 (a, b)
d = a ./ B;
r = mod (a, b);
Ende

Erstellen Sie ein Skript, fügen Sie diesen Snippet ein und speichern Sie es als "Expl_1". Geben Sie dann in der MATLAB -Befehlszeile verschiedene Datentypen in „A“ und „B“ ein und rufen Sie die Funktion „Expl_1“ auf.

Wie in der vorherigen Abbildung gezeigt, geben die Abteilungsvorgänge und die Funktion mod () die folgenden Fehlermeldungen an, wenn wir nicht numerische Daten wie Zeichenfolgen in a oder b eingeben.

"Operator './'wird nicht für Typ' String 'Operanden unterstützt.”

„Überprüfen Sie, ob der Datentyp für falsche Argument oder fehlende Argument im Aufruf zur Funktion 'mod' fehlt.”

Die beste Lösung, um diese Fehler oder unerwarteten Ergebnisse zu vermeiden. Im folgenden Code sehen wir die Lösung für dieses Problem, indem wir die mit einer und kurzkreisige Logik bedingte „if“ implementieren, wobei die Funktion mit der Ausführung der mathematischen Ausdrücke nur dann ausgeführt wird, wenn „A“ und „B“ numerische Werte enthalten.

Funktion [d, r] = expl_1 (a, b)
Wenn isnumerisch (a) && isnumerisch (b)
% Es läuft nur, wenn "a" und "b" numerisch sind.
d = a ./ B;
r = mod (a, b);
Ende
Ende

Jetzt ersetzen wir den Code der Expl_1 -Funktion durch die unten unten.

Wir können auch das Ergebnis von isnumeric () umkehren und eine Kurzschlusslogik „oder“ verwenden, um eine Rückkehr in der Funktion einzurichten, bevor wir die mathematischen Operationen ausführen, die einen Fehler generieren würden. Schauen wir uns als nächstes den Code an, um die bedingte Rückgabe zu generieren.

Funktion [d, r] = expl_1 (a, b)
Wenn ~ ist numerisch (a) || ~ isnumerisch (b)
% Wenn "A" oder "B" nicht numerisch ist, kehrt die Funktion zurück.
zurückkehren;
Ende
% Nur ausgeführt, wenn "a" und "b" numerisch sind
d = a ./ B;
r = mod (a, b);
Ende

Mit diesen beiden Möglichkeiten, isnumeric () in „if“ -Bedingungen zu verwenden.

Abschluss

Wie wir gesehen haben, ist diese Funktion eine hervorragende Ergänzung zu Bedingungen, sodass wir Code nur dann ausführen können, wenn der Datentyp kompatibel ist. Dies ist sehr nützlich, wenn wir unsere Funktionen zur Ausführung mathematischer Formeln erstellen, da wir die Eingabedaten filtern und nur verarbeiten können, wenn die Daten numerisch sind. In diesem Artikel haben wir erklärt, wie man isnumeric () in Matlab verwendet. Wir haben eine vollständige Beschreibung der Funktion, ihre Syntax, Struktur, Eingaben, Ausgänge, Datentypen und Arrays gegeben, die sie akzeptiert. Wir hoffen, Sie haben diesen Matlab -Artikel hilfreich gefunden. Weitere Tipps und Informationen finden Sie unter anderen Linux -Hinweisartikeln.