Python

Como Lidar com Dados Ausentes no Pandas

Escrito por Erick Faria · 2 min. >
Dados Ausentes no Pandas

Neste post, vamos explorar como lidar com dados ausentes no Pandas, uma biblioteca Python amplamente utilizada para análise de dados. Dados ausentes são comuns em conjuntos de dados do mundo real e podem ocorrer por várias razões, como erros de entrada, falhas na coleta de dados ou valores intencionalmente não fornecidos. Identificar, remover ou preencher esses valores é crucial para garantir a precisão das análises.

O que são Dados Ausentes?

Dados ausentes são entradas ou valores que estão faltando em um conjunto de dados. Eles são frequentemente representados por NaN (Not a Number) no Pandas. A presença de dados ausentes pode distorcer análises e modelos, levando a resultados incorretos. Portanto, é essencial identificar e tratar esses dados de maneira apropriada.

Lidando com Dados Ausentes no Pandas

Criando um DataFrame de Exemplo

Antes de lidar com dados ausentes, precisamos de um DataFrame de exemplo. Vamos criar um DataFrame simples com alguns valores ausentes:

import pandas as pd
import numpy as np

data = {
    'Nome': ['João', 'Ana', 'Carlos', 'Marta', 'Lucas'],
    'Idade': [23, 45, np.nan, 41, 29],
    'Cidade': ['São Paulo', np.nan, 'Belo Horizonte', 'Salvador', 'Curitiba'],
    'Salário': [5000, 7000, 8000, np.nan, 6200]
}

df = pd.DataFrame(data)

Análise de Dados Ausentes

Antes de decidir como tratar os dados ausentes, é importante entender o padrão e a distribuição desses dados no seu conjunto de dados. Algumas perguntas a considerar durante a análise:

  • Quais colunas possuem o maior número de dados ausentes?
  • Há algum padrão nos dados ausentes? (Por exemplo, estão concentrados em uma categoria específica?)
  • Os dados ausentes são aleatórios ou seguem algum padrão que possa indicar um problema sistemático?

Visualizações como gráficos de barras ou matrizes de calor podem ser úteis para essa análise. Por exemplo, usando a biblioteca Seaborn para visualizar a presença de dados ausentes:

import seaborn as sns
import matplotlib.pyplot as plt

sns.heatmap(df.isna(), cbar=False)
plt.show()

Identificando Dados Ausentes

A primeira etapa para lidar com dados ausentes é identificá-los. O Pandas oferece métodos como isna() e isnull() para identificar valores ausentes:

# Dados Ausentes no Pandas
df.isna()

Para obter uma visão geral do número de valores ausentes em cada coluna, você pode usar o método sum():

# Dados Ausentes no Pandas
df.isna().sum()

Removendo Dados Ausentes

Uma abordagem para lidar com dados ausentes é remover as linhas ou colunas que contêm valores ausentes. O método dropna() é utilizado para isso:

  • Remover linhas com valores ausentes:
# Dados Ausentes no Pandas
df.dropna()
  • Remover colunas com valores ausentes:
# Dados Ausentes no Pandas
df.dropna(axis=1)

Preenchendo Dados Ausentes

Outra abordagem é preencher os valores ausentes com um valor específico. O método fillna() permite substituir valores ausentes por um valor constante, como a média de uma coluna:

  • Preencher com um valor constante:
# Dados Ausentes no Pandas
df.fillna(0)
  • Preencher com a média da coluna ‘Idade’:
# Dados Ausentes no Pandas
df['Idade'].fillna(df['Idade'].mean(), inplace=True)

Preenchimento com Métodos de Interpolação

O Pandas também oferece métodos de interpolação para preencher dados ausentes. Por exemplo, você pode preencher valores ausentes com o valor anterior ou posterior na coluna:

  • Preencher com o valor anterior:
# Dados Ausentes no Pandasdf.fillna(method='ffill')
  • Preencher com o valor posterior:
df.fillna(method='bfill')

Para mais informações sobre como utilizar o Pandas para análise de dados, confira outros conteúdos no meu blog:

Considerações Finais

Espero que este guia tenha sido útil para aprender como lidar com dados ausentes no Pandas. A prática é essencial para dominar essas técnicas, então encorajo você a experimentar e aplicar esses métodos em seus próprios projetos de análise de dados.

Para aprimorar suas habilidades com o Pandas e se tornar mais eficiente na manipulação de dados, é importante também fortalecer sua compreensão em Python. Recomendamos o livro “Fundamentos em Python: Para Iniciantes em Programação e Computação”, disponível na Amazon, que oferece uma introdução abrangente ao Python.

Junte-se à nossa comunidade no Twitter e inscreva-se no nosso canal do YouTube para acessar mais tutoriais, dicas e recursos. Continue praticando e explorando novas maneiras de manipular dados com o Pandas, e fique atento para mais guias e tutoriais que compartilharemos.

Escrito por Erick Faria
Engenheiro de Dados com Ph.D. em Geografia e experiência em análise espacial e geoprocessamento. Expertise em processamento de grandes volumes de dados geoespaciais, imagens de satélite e dados de mercado, utilizando ferramentas como Spark, Databricks e Google Earth Engine. Experiência em projetos de mercado de carbono, modelos preditivos para investimentos agrícolas e liderança de projetos de dados em saúde pública. Habilidades em Python, R, SQL e diversas ferramentas de engenharia de dados. Profile