Null -Werte in Ihrem MATLAB Datenfeld können Sie Ihre Daten-Analyse schwierig. Statistiken oder Signalverarbeitung Berechnungen geben kann bedeutungslos Ergebnisse . Grundstücke möglicherweise schwer zu lesen, wenn Null-Werte aufgetragen sind . Extrahieren der Null-Werte - Entfernen Sie sie von Ihrem Daten-Array - können Sie mit den Nutzdaten , um aussagekräftige Ergebnisse zu erhalten zu arbeiten. Things You
Numerische Daten
Computer MATLAB
brauchen anzeigen Weitere Anweisungen
1
Kopieren Sie Ihre ursprünglichen Daten-Array auf eine andere Variable durch Zuweisung seinen Wert auf eine neue Variable Namen. Wenn Sie das Array zu verwenden , wie es vor Ihnen die Nullen entfernt war benötigen, können Sie diese neue Variable verwenden .
Wenn das Array wird als M, zum Beispiel , weisen Sie eine neue Variable namens Mzeros . Um dies zu tun , geben Sie " Mzeros = M " (ohne die Anführungszeichen) an der MATLAB-Kommandozeile .
2
Speichern Sie die ursprünglichen Daten -Array in einer Textdatei im Fall, dass Sie es später wieder benötigt wird , mit die MATLAB " dlmwrite "-Funktion . Wenn die MATLAB variable Speicherung Ihrer Daten versehentlich gelöscht oder überschrieben haben, können Sie re-load die ursprünglichen Daten aus dieser Textdatei .
Zum Beispiel, wenn die ursprünglichen Daten -Array in der Variablen Mzeros , Typ " dlmwrite gespeichert ( ' Mzeros.dat ' , Mzeros ) "( ohne die Anführungszeichen ) an Mzeros in eine Textdatei namens Mzeros.dat schreiben.
Sie können diesen Schritt überspringen , wenn Ihre Daten bereits in einer Textdatei gespeichert .
3
Entscheiden Sie, ob Ihre Daten Array die gleiche Größe und Form müssen . Halten Sie die Array- Größe und Form , wenn die Array- Zeilen und Spalten besondere Bedeutung ( zum Beispiel , stellt jede Zeile eine andere experimentelle Studie , und jede Spalte repräsentiert eine andere Messgröße ) haben . Um die gleiche Größe und Form zu halten, ersetzen Sie jedes Null-Wert mit einem Platzhalter Wert NaN (die " nicht eine Nummer" ) .
Um die Null-Werte mit NaN in einem Array namens M , Typ " M ersetzen ( M == 0) = NaN " ohne Anführungszeichen . Achten Sie darauf, M == 0 mit zwei Gleichheitszeichen eingeben. Dieser Befehl weist MATLAB , um alle Elemente von M gleich Null zu finden, und ersetzen Sie sie mit NaN .
Alles im Array bleibt in der gleichen Position (gleiche Zeile und Spalte ), aber all die Nullen werden nun NaN . Da die meisten MATLAB-Funktionen NaN Werte ignorieren , können Sie zeichnen und die Daten analysieren , als ob die NaNs waren nicht da , immer sinnvolle Ergebnisse .
4
Sie können die Null-Elemente komplett löschen ( statt sie zu ersetzen mit Platzhalter ) , wenn das Array ist eine einfache Liste von Werten , ohne sinnvolle Zeilen und Spalten. Um die Null-Elemente in einem Array namens M löschen, geben Sie "M (M == 0) = [] " (ohne Anführungszeichen). Achten Sie darauf, M == 0 mit zwei Gleichheitszeichen eingeben. Dieser Befehl weist MATLAB , um alle Elemente von M gleich Null zu finden, und ersetzen Sie sie mit []. [ ] Steht für " leer. " Ersetzen eines Wertes mit [ ] löscht das Element .
Wenn M war ein zweidimensionales Array , es jetzt ein Spaltenvektor sein wird , die alle Null verschiedenen Elemente von der ursprünglichen M genommen spaltenweise . Zum Beispiel, wenn M war ein Array mit zwei Zeilen und vier Spalten :
[ 1 6 0 3
2 0 7 4 ]
wird es nun
[ S. 1 von 2
6
7
3
4] .
Wenn M wurde ein Vektor ( nur eine Zeile oder Spalte) , wird sie jetzt eine kürzere Vektor sein . Zum Beispiel, wenn M war [ 1 2 0 3 ] , wird es jetzt sein [ 1 2 3] .
Das Array ändert seine Form und Größe , wenn Sie die Null-Elemente zu löschen. Aber da das Array hat keine Platzhalter NaN-Werte , können Sie die Daten auch mit MATLAB -Funktionen, die Sie nicht ignorieren NaN-Werte zu analysieren.