Verifique os valores NaN em Python
-
Use a função
math.isnan()
para verificar os valoresnan
em Python -
Use a função
numpy.isnan()
para verificar os valoresnan
em Python -
Use a função
pandas.isna()
para verificar os valoresnan
em Python -
Use o
obj != obj
para verificar os valoresnan
em Python
O nan
é uma constante que indica que o valor fornecido não é legal - Not a Number
.
Observe que nan
e NULL
são duas coisas diferentes. O valor NULL
indica algo que não existe e está vazio.
Em Python, lidamos com esses valores com muita frequência em objetos diferentes. Portanto, é necessário detectar tais constantes.
Em Python, temos a função isnan()
, que pode verificar os valores nan
. E esta função está disponível em dois módulos - NumPy
e math
. A função isna()
no módulo pandas
também pode verificar os valores nan
.
Use a função math.isnan()
para verificar os valores nan
em Python
A função isnan()
na biblioteca math
pode ser usada para verificar as constantes nan
em objetos flutuantes. Ele retorna True
para cada valor encontrado. Por exemplo:
import math
import numpy as np
b = math.nan
print(np.isnan(b))
Resultado:
True
Observe que a constante math.nan
representa um valor nan
.
Use a função numpy.isnan()
para verificar os valores nan
em Python
A função numpy.isnan()
pode verificar em diferentes coleções, como listas, arrays e muito mais, os valores nan
. Ele verifica cada elemento e retorna um array com True
sempre que encontra constantes nan
. Por exemplo:
import numpy as np
a = np.array([5, 6, np.NaN])
print(np.isnan(a))
Resultado:
[False False True]
A constante np.NaN()
representa também um valor nan
.
Use a função pandas.isna()
para verificar os valores nan
em Python
A função isna()
no módulo pandas
pode detectar valores NULL
ou nan
. Ele retorna True
para todos os valores encontrados. Ele pode verificar esses valores em um DataFrame ou em um objeto Series também. Por exemplo,
import pandas as pd
import numpy as np
ser = pd.Series([5, 6, np.NaN])
print(pd.isna(ser))
Resultado:
0 False
1 False
2 True
dtype: bool
Use o obj != obj
para verificar os valores nan
em Python
Para qualquer objeto, exceto nan
, a expressão obj == obj
sempre retorna True
. Por exemplo,
print([] == [])
print("1" == "1")
print([1, 2, 3] == [1, 2, 3])
print(float("nan") == float("nan"))
Portanto, poderíamos usar obj != obj
para verificar se o valor é nan
. É nan
se o valor de retorno for True
.
import math
b = math.nan
def isNaN(num):
return num != num
print(isNaN(b))
Resultado:
True
Este método, entretanto, pode falhar com versões anteriores do Python (<= Python 2.5).
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn