Main Content

isnan

Déterminer les éléments NaN d'un tableau

Description

exemple

TF = isnan(A) renvoie un tableau logique contenant 1 (true) lorsque les éléments de A sont NaN, et 0 (false) lorsqu’ils ne le sont pas. Si A contient des nombres complexes, isnan(A) contient 1 pour les éléments dont la partie réelle ou imaginaire est NaN, et 0 pour les éléments dont les parties réelles et imaginaires ne sont pas NaN.

Exemples

réduire tout

Créez un vecteur ligne et déterminez quels éléments sont NaN.

A = 0./[-2 -1 0 1 2]
A = 1×5

     0     0   NaN     0     0

TF = isnan(A)
TF = 1x5 logical array

   0   0   1   0   0

Créez un tableau de nombres complexes. Déterminez si les nombres complexes contiennent des NaN.

A = [2 + 1i, 1/0 + 3i, 1/2 - 1i*NaN]
A = 1×3 complex

   2.0000 + 1.0000i      Inf + 3.0000i   0.5000 +    NaNi

TF = isnan(A)
TF = 1x3 logical array

   0   0   1

Créez un tableau et identifiez les éléments dont les valeurs sont NaN.

A = [1,3,5,7,NaN,10,NaN,4,6,8]
A = 1×10

     1     3     5     7   NaN    10   NaN     4     6     8

TF = isnan(A)
TF = 1x10 logical array

   0   0   0   0   1   0   1   0   0   0

Indexez dans A avec TF pour accéder aux éléments de A qui sont NaN. Remplacez les valeurs NaN par 0.

A(TF) = 0
A = 1×10

     1     3     5     7     0    10     0     4     6     8

Arguments d'entrée

réduire tout

Tableau en entrée, spécifié sous forme de scalaire, de vecteur, de matrice ou de tableau multidimensionnel.

Conseils

  • Si x est un scalaire réel, seul un des isfinite(x), isinf(x) et isnan(x) renvoie la valeur la logique 1 (true).

  • Pour un scalaire complexe z, isinf(z) et isnan(z) peuvent tous deux renvoyer la valeur logique 1. Par exemple, isinf(complex(Inf,NaN)) et isnan(complex(Inf,NaN)) renvoient tous les deux la valeur logique 1.

Capacités étendues

Génération de code C/C++
Générez du code C et C++ avec MATLAB® Coder™.

Génération de code HDL
Générez du code VHDL, Verilog et SystemVerilog pour les designs FPGA et ASIC avec HLD Coder™.

Historique des versions

Introduit avant R2006a