Rôzne metódy na odstránenie hodnôt NaN z matice v MATLAB

Rozne Metody Na Odstranenie Hodnot Nan Z Matice V Matlab



The Nie Číslo hodnoty, bežne označované ako hodnoty NaN sa používajú na znázornenie chýbajúcich alebo neplatných údajov. Tieto hodnoty nie sú skutočnými hodnotami; preto ich nemôžete použiť vo svojich matematických výpočtoch. Ak váš výsledok alebo výstup zahŕňa hodnoty NaN , musíte ich odstrániť, aby ste zaistili presnosť a konzistentnosť výsledkov. Dôvodom je hodnoty NaN naruší vaše matematické operácie a vaše výsledky budú nepresné. Prítomnosť týchto hodnôt tiež sťaží porovnanie vašich výsledkov s inými výsledkami.

Ak chcete odstrániť, prečítajte si túto príručku hodnoty NaN z matice v MATLABE.

Metódy na odstránenie NaN hodnôt z matice v MATLAB

Hodnoty NAN môžete odstrániť z matice v MATLAB:







Metóda 1: Odstráňte hodnoty NaN z matice v MATLAB pomocou funkcie rmmissing().

The rmmissing() je vstavaná funkcia v MATLABE, ktorú môžete použiť na jednoduché odstránenie hodnoty NaN z matice vo vašom kóde MATLAB. Táto funkcia berie maticu ako vstup a vracia novú maticu, ktorá neobsahuje hodnoty NaN .



Syntax
The rmmissing() funkcia nasleduje jednoduchú syntax v MATLAB, ako je uvedené nižšie:



rmmissing ( M )

Kde M je matica s hodnoty NaN .





Príklad
Nasledujúci príklad demonštruje použitie rmmissing() funkciu pri odstraňovaní hodnoty NaN z matice špecifikovanej používateľom.

A = [ 6 9 8 NaN NaN 9 2 7 ] ;
B = chýba ( A ) ;
disp ( B ) ;



Metóda 2: Odstránenie hodnôt NaN z matice v MATLAB pomocou funkcie isnan().

Môžete tiež použiť isnan() funkciu vo vašom kóde MATLAB odstrániť NaN hodnoty z vašej matice. Používa rovnaký argument ako matica, z ktorej chcete odstrániť NaN hodnoty. Táto funkcia však namiesto zadávania hodnôt poskytuje logické hodnoty, to znamená, že uvidíte logickú 1, ak existuje Hodnota NaN v matici, zatiaľ čo logická 0, ak neexistuje Hodnota NaN v matici.

Syntax

Syntax, ktorá sa má použiť isnan() funkcia v MATLABE je uvedená nižšie:

je ( M )

Tu, M je matica, z ktorej chcete odstrániť NaN hodnoty.

Príklad

Príklad uvedený nižšie je podobný tomu, ktorý už bol poskytnutý pre rmmissing() funkciu. Avšak namiesto toho rmmissing() , budeme používať isnan() funkciu na odstránenie hodnoty NaN z kódu. Ďalej vytvoríme ďalšiu maticu, ktorá bude uchovávať hodnoty matice, ktorá neobsahuje hodnoty NaN.

A = [ 6 9 8 NaN NaN 9 2 7 ] ;
B = isnan ( A ) ;
disp ( B )
C = A ( ~B )

Záver

The hodnoty NaN sťaží vám získanie výsledku v kóde MATLAB. Môžete ich odstrániť vo svojom kóde pomocou rmmissing() alebo isnan() funkciu. Použitie rmmissing() je jednoduché, pretože poskytuje výsledok okamžite. Avšak pre prípad isnan() , uvidíte logické hodnoty a na získanie požadovanej matice musíte získať prvky z matice, ktoré nie sú NaN . Táto vyššie uvedená príručka poskytuje obe tieto metódy na odstránenie hodnoty NaN z matice MATLABu a môžete si vybrať ten, ktorý vám viac vyhovuje.