Agora que você obteve todos os seus dados, passamos à etapa mais demorada de todas: limpar e preparar os dados. Isso é especialmente verdadeiro em projetos de Big Data, que geralmente envolvem terabytes de dados para trabalhar.
De acordo com entrevistas com cientistas de dados, esse processo (também conhecido como “trabalho de zelador de dados”) geralmente pode levar de 50 a 80% do tempo. Então, o que exatamente isso implica e por que demora tanto?.
A razão pela qual esse processo é demorado é simplesmente o fato de existirem tantos cenários possíveis que podem exigir “limpeza”. Por exemplo, os dados também podem ter inconsistências na mesma coluna, o que significa que algumas linhas podem ser rotuladas como 0 ou 1 e outras podem ser rotuladas como “não” ou “sim”.
Os tipos de dados também podem ser inconsistentes — alguns dos 0s podem ser inteiros, enquanto outros podem ser cadeias de caracteres.
Se estivermos lidando com um tipo de dados categóricos com várias categorias, algumas delas podem ter erros de ortografia ou ter casos diferentes, como categorias para homens e mulheres.
Estes são alguns subconjuntos de exemplos em que você pode ver inconsistências e é importante capturá-las e corrigi-las nesta fase.
Uma das etapas que muitas vezes são esquecidas nesse estágio, causando muitos problemas posteriormente, é a presença de dados ausentes.
Dados ausentes podem gerar muitos erros na criação e no treinamento do modelo de Machine Learning. Uma opção é ignorar as instâncias que possuem valores ausentes. Dependendo do seu conjunto de dados, isso pode não ser realista se houver muitos dados ausentes.
Outra abordagem comum é usar algo chamado imputação média, que substitui os valores ausentes pela média de todas as outras instâncias. Isso nem sempre é recomendado porque pode reduzir a variabilidade dos seus dados, mas em alguns casos isso faz sentido. Portanto precisa ser devidamente compreendido daí a importância da 1ªEtapa - Entendimento do Problema.
Pesquise sobre: Pandas, Dplyr, Cleaning Dirty Data, pois estas bibliotecas ajudam no processo de limpeza e possuem classes e métodos específicos.
Tratar os dados antes de começar a analisá-los é essencial para o sucesso.
É necessário estar atento a registros duplicados, faltantes, formatados de forma não-convencional (ex.: campos de data), inválidos (ex.: idade negativa), inconsistências de cadastros (ex.: data da venda anterior a data de início de venda de um produto).
Após essa identificação, é importante pensar na melhor forma de contornar de acordo com as regras do negócio. Por exemplo, no caso de um registro onde o valor da compra está vazio, você poderia preenchê-lo com zero, ou com a média dos valores de compra de produtos similares, etc. Não esqueça, analise o contexto para validar se a técnica escolhida faz sentido e não impactará no modelo.
Dica 1: A biblioteca Python missingno te ajuda a encontrar valores faltantes/nulos nos seus dados.
Dica 2: A biblioteca Python pandas-profiling te ajuda a explorar seus dataframes com informações estatísticas, descritivas, histogramas e etc.
Comments