Café com Código #01: Tratando Valores Faltantes com Pandas e Python

pandas

Salve Minerador!!,

nesse Café com Código #01 vai mais um dica para você aprender Data Science na pausa para o sagrado cafezinho.

Como sempre de forma rápida e objetiva…como Tratar Valores Faltantes com o Pandas ?

Sabemos que o Pandas é uma biblioteca Python muito utilizada para trabalhar com análise de dados.

Se você não conhece não deixe de conferir esta e outras Ferramentas e Bibliotecas Fundamentais para Trabalhar com Data Science (Ferramentas Essenciais para Mineração de Dados e Big Data) .

Quando precisamos trabalhar com análise de dados é comum nos deparar com valores nulos ou faltantes em nossas bases de dados.

Existem inúmeras razões para isso, desde erro durante a coleta dos dados, conversões erradas etc.

Dessa forma como podemos trabalhar com esses valores utilizando o Pandas?

O primeiro passo é checar se existe valores faltantes em nossa base de dados, para isso usaremos o método isnull().

Aliás, antes disso, vamos carregar a nossa base de dados de teste e visualizar alguns dados e seus atributos com os comandos abaixo:

pandas dataset01

Com a base de dados carregada, vamos usar o método isnull() para verificar se existem valores faltantes.

pandas dataset.isnull()

O método isnull() retorna True caso encontre valores do tipo NaN ou Nulo.

Onde NaN seria valores faltantes. Veja que na imagem acima está destacada as ocorrências de valores faltantes que o método encontrou.

Uma boa idéia é somar esses registros faltantes por atributos, para isso execute o método sum() conforme o comando abaixo.

pandas dataset.isnull().sum()

Observe a contagem de registros faltantes por atributos. Existem diversas formas de tratar valore faltantes e isso vai depender da necessidade do projeto.

Em situações onde não podem haver valores faltantes nos dados, você pode excluir qualquer linha onde contém esses valores ou pode preencher com novos dados.

Para apagar linhas com valores faltantes use o método dropna() que contém várias formas de fazer a remoção.

Para remover todas as linhas com valores faltantes simplesmente executamos o comando.

Com este comando removemos todas as linhas onde tenha pela menos um registro faltante em algum atributo.

O parâmetro inplace especificamos que a alteração será feita no DataFrame em memória.

Consulte o número de valores faltantes novamente e veja que as linhas foram removidas.

È possível ainda, remover somente linhas que estejam com valores faltantes em todas as colunas, veja:

Outra forma de tratar os valores faltantes é preencher os dados com algum valor específico ou com e média dos dados de um determinado atributo.

Para setar um valor aos registros faltantes usamos o método fillna().

No exemplo abaixo, setamos todos os valores faltantes com o valor zero (0).

Fazendo a contagem de registros faltantes novamente…

pandas dataset.isnull().sum()

Preenchemos os registros faltantes com zero, poderíamos preencher com o valor da média de um determinado atributo..legal hein?

Muito simples, veja no comando abaixo.

Observe que apenas passamos ao método fillna() o valor da média do atributo fixed acidity, dessa forma o Pandas irá preencher todos os valores faltantes da base de dados com o valor da média desse atributo.

Fácil demais 🙂

Esse foi mais um Café com Código, sempre rápido, fácil e direto ao ponto toda quarta.

Gostou ? Então deixe um comentário e compartilhe com os amigos! 😉

Coloque o seu e-mail abaixo para receber gratuitamente as atualizações do blog!