Různé metody pro odstranění hodnot NaN z matice v MATLABu

Ruzne Metody Pro Odstraneni Hodnot Nan Z Matice V Matlabu



The Ne Číslo hodnoty, běžně označované jako hodnoty NaN se používají k reprezentaci chybějících nebo neplatných dat. Tyto hodnoty nejsou skutečnými hodnotami; proto je nemůžete použít ve svých matematických výpočtech. Pokud váš výsledek nebo výstup zahrnuje hodnoty NaN , musíte je odstranit, aby byly výsledky přesné a konzistentní. Důvodem je hodnoty NaN naruší vaše matematické operace a vaše výsledky budou nepřesné. Přítomnost těchto hodnot také ztíží porovnání vašich výsledků s jinými výsledky.

Pokud chcete odstranit, přečtěte si tento návod hodnoty NaN z matice v MATLABu.

Metody pro odstranění NaN hodnot z matice v MATLABu

Hodnoty NAN můžete z matice v MATLABu odstranit:







Metoda 1: Odebrání hodnot NaN z matice v MATLABu pomocí funkce rmmissing().

The rmmissing() je vestavěná funkce v MATLABu, kterou můžete snadno odstranit hodnoty NaN z matice ve vašem kódu MATLAB. Tato funkce bere matici jako vstup a vrací novou matici, která neobsahuje matici hodnoty NaN .



Syntax
The rmmissing() funkce se řídí jednoduchou syntaxí v MATLABu, jak je uvedeno níže:



rmmissing ( M )

Kde M je matice mající hodnoty NaN .





Příklad
Následující příklad ukazuje použití rmmissing() funkce při odstraňování hodnoty NaN z matice zadané uživatelem.

A = [ 6 9 8 NaN NaN 9 2 7 ] ;
B = chybí ( A ) ;
disp ( B ) ;



Metoda 2: Odebrání hodnot NaN z matice v MATLABu pomocí funkce isnan().

Můžete také použít isnan() funkce ve vašem kódu MATLAB odstranit NaN hodnoty z vaší matice. Používá stejný argument, který je maticí, ze které chcete odstranit NaN hodnoty. Tato funkce však namísto zadávání hodnot poskytuje logické hodnoty, to znamená, že uvidíte logickou 1, pokud existuje Hodnota NaN v matici, zatímco logická 0, pokud neexistuje Hodnota NaN v matici.

Syntax

Syntaxe, která se má použít isnan() funkce v MATLABu je uvedena níže:

je ( M )

Tady, M je matice, ze které chcete odstranit NaN hodnoty.

Příklad

Níže uvedený příklad je podobný tomu, který již byl poskytnut pro rmmissing() funkce. Nicméně místo toho rmmissing() , budeme používat isnan() funkce k odstranění hodnoty NaN z kódu. Dále také vytvoříme další matici, která bude uchovávat hodnoty matice, která nezahrnuje hodnoty NaN.

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

Závěr

The hodnoty NaN znesnadní vám získání výsledku v kódu MATLAB. Můžete je odstranit ve svém kódu pomocí rmmissing() nebo isnan() funkce. Použití rmmissing() je přímočará, protože dává výsledek okamžitě. Nicméně pro případ isnan() , uvidíte logické hodnoty a abyste získali požadovanou matici, musíte z matice získat prvky, které nejsou NaN . Tato výše uvedená příručka poskytuje obě tyto metody pro odstranění hodnoty NaN z matice MATLABu a můžete si vybrat ten, který vám lépe vyhovuje.