Pular para o conteúdo principal

Python NaN: Quatro maneiras de verificar valores ausentes no Python

Dá uma olhada em 4 maneiras de detectar valores NaN em Python, usando NumPy e Pandas. Aprenda as principais diferenças entre NaN e None para limpar e analisar dados de forma eficiente.
Atualizado 8 de set. de 2025  · 5 min lido

No mundo da ciência de dados e da análise, encontrar dados ausentes é mais uma regra do que uma exceção. Os valores ausentes podem distorcer a análise, levar a conclusões erradas e, em geral, atrapalhar o fluxo do processamento de dados. Resolver essas lacunas é essencial para manter a integridade da sua análise. Este artigo quer te mostrar diferentes maneiras de identificar valores NaN (Not a Number) em Python.

A resposta curta: Use o NumPy’s isnan() função ou Pandas .isna() método

Quando você tá lidando com valores ausentes no Python, a abordagem depende muito da estrutura de dados com a qual você tá trabalhando.

Para valores únicos ou matrizes: Use o NumPy

A função isnan() do NumPy é perfeita pra identificar NaNs em matrizes numéricas ou valores únicos, oferecendo uma solução direta e eficiente. Aqui está ele em ação!

import numpy as np

# Single value check
my_missing_value = np.nan
print(np.isnan(my_missing_value))

# Output: True

# Array check
my_missing_array = np.array([1, np.nan, 3])
nan_array = np.isnan(my_missing_array)
print(nan_array)

# Output: [False  True False]

Para DataFrames: Use Pandas

O Pandas oferece métodos completos, como .isna() e .isnull(), para detectar valores ausentes em objetos DataFrame ou Series, integrando-se perfeitamente aos fluxos de trabalho de análise de dados.

import pandas as pd
import numpy as np

my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(my_dataframe.isna())

#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

Quando você rodar esse código, o resultado vai mostrar a presença de valores NaN num contexto mais interessante, como mostrado acima.

A diferença entre NaN e None

Entender a diferença entre NaN e None é super importante em Python. NaN é uma representação em ponto flutuante de “Not a Number” (Não é um número), usada principalmente em cálculos numéricos. Já None é um objeto do Python que representa a ausência de um valor, tipo o null em outras linguagens. Enquanto NaN é usado em cálculos matemáticos ou científicos, “None” é mais genérico, indicando a falta de dados.

4 maneiras de verificar se tem NaN no Python

Navegar pelos conjuntos de dados para identificar valores ausentes é uma etapa crítica no pré-processamento de dados. Vamos ver quatro jeitos práticos de checar valores de NaN no Python, continuando com os exemplos legais que já usamos.

1. Verificando se há NaN usando np.isnan()

Como vimos antes, o NumPy oferece uma maneira simples de identificar valores e NaN es tanto em valores únicos quanto em matrizes, o que é essencial para a análise de dados numéricos.

import numpy as np

# Checking a single value
print(np.isnan(np.nan))

# Output: True

# Checking an array
my_array = np.array([1, 5, np.nan])
print(np.isnan(my_array))

# Output: [False False  True]

2. Verificando se NaN usando pd.isna()

O Pandas facilita a detecção de valores NaN em estruturas de dados, desde escalares até DataFrame complexos, o que o torna super útil para tarefas de manipulação de dados.

import numpy as np
import pandas as pd

# Checking a single value
print(pd.isna(np.nan))

# Output: True

# Checking a pandas Series
my_series = pd.Series(["Python", np.nan, "The Best"])
print(my_series.isna())

# Output:
# 0    False
# 1     True
# 2    False

# Checking a pandas DataFrame
my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(pd.isna(my_dataframe)) # Output a DataFrame with True for missing values

3. Verificando se NaN em DataFrames usando Pandas .isna() ou .isnull() métodos

Os DataFrame do Pandas também têm os métodos .isna() e .isnull() pra achar facilmente os valores que estão faltando nos conjuntos de dados, dando uma visão geral clara da integridade dos dados.

import numpy as np
import pandas as pd

# Create a dataframe with missing values
my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(my_dataframe.isna())
# Output:
#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

print(my_dataframe.isnull())
# Output:
#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

4. Verificando se NaN em DataFrames usando math.isnan()

Para verificações individuais de números, a função math.isnan() oferece uma solução simples, mas eficaz, especialmente quando se trata de tipos de dados Python puros.

import math

# Assuming my_number is a float or can be converted to one
my_number = float('nan')
print(math.isnan(my_number))

# Output: True

Considerações finais e recursos adicionais

Identificar e gerenciar valores NaN é uma etapa fundamental na limpeza e preparação dos seus dados para análise. Se você está trabalhando com matrizes, séries ou estruturas de dados, é essencial entender as ferramentas e métodos disponíveis no Python para lidar com dados ausentes. Para saber mais, dá uma olhada nesses recursos:


Adel Nehme's photo
Author
Adel Nehme
LinkedIn

Adel é educador de ciência de dados, palestrante e evangelista da DataCamp, onde lançou vários cursos e treinamentos ao vivo sobre análise de dados, aprendizado de máquina e engenharia de dados. Ele é apaixonado pela disseminação das habilidades e da alfabetização de dados nas organizações e pela interseção entre tecnologia e sociedade. Ele tem um mestrado em ciência de dados e análise de negócios. Em seu tempo livre, você pode encontrá-lo passeando com seu gato Louis.

Tópicos

Comece sua jornada com Python hoje mesmo!

Programa

Fundamentos de dados Python

0 min
Aumente suas habilidades com dados, descubra como manipular e visualizar dados e aplique análises avançadas para tomar decisões orientadas por dados.
Ver detalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

Tutorial

Principais técnicas para lidar com valores ausentes que todo cientista de dados deve conhecer

Explore várias técnicas para lidar eficientemente com valores ausentes e suas implementações em Python.
Zoumana Keita 's photo

Zoumana Keita

Tutorial

Matrizes Python

Matrizes Python com exemplos de código. Aprenda hoje mesmo a criar e imprimir matrizes usando o Python NumPy!
DataCamp Team's photo

DataCamp Team

Tutorial

Tratamento de exceções e erros em Python

Erros e exceções podem levar à falha do programa ou a um comportamento inesperado, e o Python vem com um conjunto robusto de ferramentas para melhorar a estabilidade do código.
Abid Ali Awan's photo

Abid Ali Awan

Tutorial

Entendendo o desvio de dados e o desvio de modelo: Detecção de deriva em Python

Navegue pelos perigos do desvio de modelo e explore nosso guia prático para o monitoramento do desvio de dados.
Moez Ali's photo

Moez Ali

Tutorial

21 ferramentas essenciais do Python

Aprenda sobre as ferramentas Python essenciais para o desenvolvimento de software, raspagem e desenvolvimento da Web, análise e visualização de dados e aprendizado de máquina.
Abid Ali Awan's photo

Abid Ali Awan

data-frames-in-python-banner_cgzjxy.jpeg

Tutorial

Pandas Tutorial: DataFrames em Python

Explore a análise de dados com Python. Os DataFrames do Pandas facilitam a manipulação de seus dados, desde a seleção ou substituição de colunas e índices até a remodelagem dos dados.
Karlijn Willems's photo

Karlijn Willems

Ver maisVer mais