Tutorial

Como realizar a extração e preparação de dados em projetos?

POR
Vinícius Souza

Continuando nossa série de posts sobre o CRISP-DM (principal metodologia para construção de projetos e análises de dados), vamos falar sobre as etapas 2 e 3 da metodologia.

Mas quais etapas existem na metodologia mesmo? São eles:

  • Etapa 1: Entendimento do Negócio
  • Etapa 2: Entendimento dos dados
  • Etapa 3: Preparação dos dados
  • Etapa 4: Desenvolvimento do estudo ou análise
  • Etapa 5: Validação
  • Etapa 6: Implantação do projeto e acompanhamento

Antes de continuar, se você não viu o post anterior, recomendo fortemente que o faça. Clique aqui para ler a primeira parte.

Tudo certo? Então vamos lá!

Como realizar a extração de dados em um projeto?

Na etapa 2 da metodologia, precisamos extrair os dados necessários para análise. Para isso, precisamos basicamente de dois processos. São eles:

a) Descrição dos dados e coleta

O que deve ser feito ?

Chegamos na etapa da busca dos dados. Nesta hora precisamos ter acesso ao dicionário de dados (a.k.a. Metadados) do repositório de dados de sua empresa. A partir daí, utilizamos a ferramenta de manipulação de dados disponível, que em geral é o SQL, para a devida consulta, manipulação e extração dos dados necessários para sua análise.

Como realizar?

Para ter acesso ao dicionário de dados, fale com o time de TI (Analistas de Bancos de Dados, Arquitetos de Dados ou Engenheiro de Dados). É muito comum eles te fornecerem acesso ao documento ERD (Diagrama de Relacionamento de Entidades) do banco de dados ou mesmo ao sistema de Data Catalog da empresa.

Para a coleta, realize as consultas usando o SQL ou qualquer ferramenta disponível. Algumas empresas ou processos podem não ter os dados já estruturados. Neste caso, você será o responsável por estruturar. Isso é muito comum.

Também é possível buscar dados de fontes não estruturadas através de API's ou Web Scrapping. Já viu nossa super Live sobre o tema? Clique aqui e coloque em sua playlist.

Dicas da Preditiva

  • Evite fazer um SELECT * FROM em seu banco de dados para extrair a base completa para sua ferramenta de análise (Excel, Power BI, Python etc). Em vez disso, tente extrair apenas a informação necessária, pois será mais performático desta forma (e o time de Engenharia e TI vai agradecer bastante, pois você não vai roubar o processamento de toda a empresa só para você…haha)

b) Análise Exploratória e Sanity Check

O que deve ser feito ?

Nesta etapa você estará aplicando técnicas de estatística descritiva para entender cada variável de sua base e suas relações entre as outras variáveis. Além disso, ao resumir os dados você tem condições de verificar sua qualidade (Sanity Check). Se algo estranho for encontrado (valores fora de um limite razoável, outliers etc), você sempre pode questionar as áreas que liberaram a informação para verificação.

Como realizar?

Seguem abaixo as principais técnicas de Análise Exploratória de Dados em projetos: 

  • Tabelas de Frequência: Frequência Absoluta, Relativa e Acumulada.

  • Visualização de Dados: Box-Plots, Histogramas, Gráficos de Linhas ou Colunas. Medidas Resumo: Média, Mediana, Quartis, Desvio Padrão.

  • Análise Bidimensional: Correlação de Pearson, Coeficiente de Determinação e Information Value (IV).

Dicas da Preditiva

  • Faça a análise de forma univariada primeiro (variável a variável) e bivariada/bidimensional posteriormente. Na bivariada, foque na variável que interessa no primeiro momento. Evite ficar calculando cada combinação de variáveis dois a dois sem um motivo claro.

  • Uma ótima forma de analisar uma variável numérica é criar um BoxPlot e Histograma. Rapidamente você já conhecerá as concentrações e possíveis outliers para investigar.

  • Para Sanity Check (“Teste de Qualidade”), em variáveis numéricas, verifique a amplitude da variável calculando o mínimo e seu máximo. Para variáveis qualitativas, faça contagens para entender as categorias da variável que estão disponíveis. Muitos problemas aparecem dessa forma.

  • Existem muitas formas de se mostrar a análise exploratória para seu cliente. Pode-se usar gráficos, tabelas ou um combinado dos dois. Independente da solução mostrada, é muito importante que se escolha bons gráficos, com cores com pouca saturação, e que tanto as tabelas quanto os gráficos tenham rótulos e legendas bem claras

  • Sempre coloque também descritivos rápidos abaixo do gráfico destacando insights que você acredita serem relevantes.

  • Se a sua base tiver muitas variáveis, mostre apenas as mais importantes para o negócio (verifique com o ponto focal / cliente quais são) ou as mais importantes segundo algum critério de seleção de variáveis (como as mais relacionadas com a variável do interesse, por exemplo).

Veja alguns exemplos de gráficos simples em Excel (pode ser feito em Power BI, Python ou qualquer ferramenta, desde que com boas práticas):

Como realizar a preparação de dados em um projeto?

Na etapa 3 da metodologia, precisamos preparar os dados extraídos na etapa anterior. Para isso, precisamos passar por dois processos. Veja quais são:

a) Seleção das variáveis

O que deve ser feito ?

Nem toda variável que você tem disponível no Data Lake (repositório de dados) é importante para seu problema. É comum coletarmos vários dados que pensávamos serem importantes na etapa de conhecimento de negócio que se mostraram pouco relevantes após a análise exploratória inicial. Nesta etapa fazemos uma seleção das variáveis que realmente importam para responder a pergunta de negócio.

Como realizar?

Se o seu problema for do tipo bidimensional, quando quer entender os fatores que influenciam uma determinada variável de seu interesse (target), podemos aplicar técnicas de associação de variáveis para “ranquear” as variáveis mais relacionadas com o seu target. Desta forma, focamos nas variáveis que realmente vão trazer valor para o problema a ser resolvido.

Dicas da Preditiva

  • Existem técnicas simples e sofisticadas para escolher as variáveis mais importantes. Uma das mais simples e eficazes é a técnica de Information Value (IV). Com ela, você pode produzir um ranking de IV’s do maior para o menor. As variáveis com IV muito fraco são ótimas candidatas para descarte. Veja um exemplo a seguir.

  • Já as técnicas mais sofisticadas envolvem o cálculo do p-valor em modelos lineares como a Regressão Linear Múltipla e Logística (Ex: técnica Stepwise) ou ainda distribuições de probabilidade (ex: Algoritmo Boruta).

  • Após selecionar as variáveis mais importantes, pode ser uma boa ideia já falar com o time de Engenharia de Dados para construir uma query/pipeline automatizada para que você utilize esses dados futuramente quando o seu projeto for implantado. Assim você ganha tempo na etapa de implantação. Cada time de Engenharia tem seus processos e prazos. Consulte-os!

b) Limpeza e Formatação dos dados

O que deve ser feito ?

Agora que selecionamos as variáveis que usaremos para atingir o objetivo precisamos prepará-las para a aplicação das técnicas estatísticas.

Como realizar?

Este processo também chamado de Data Wrangling ou Data Cleaning envolve basicamente: 

  • Tratamento de dados faltantes (missing values);
  • Padronização de case-sensitive;
  • Categorização de variáveis numéricas;
  • União de tabelas (joins);
  • Feature engineering (extração de caraterísticas);
  • Conversão de tipos de dados;
  • Entre outros.

Dicas da Preditiva

  • Um erro comum acontece quando as pessoas removem as variáveis ou observações da base que contenham dados faltantes por achar que não conseguirão extrair informações relevantes.

  • Não é aconselhável remover esses dados sem antes entender o motivo dos dados faltantes. Algum sistema não tem uma validação de campo obrigatório no formulário? O time de Engenharia de Dados pecou em alguma etapa do pipeline? Dependendo da origem do problema, você pode ajustar facilmente extraindo os dados novamente ou ainda usando técnicas de imputação de dados.

  • Use e abuse de Feature Engineering. Muitas variáveis com informação relevante surgem de cálculos ou lógicas aplicadas nas outras variáveis “brutas” da base. Ex: idades de datas de nascimento, sexo do cliente através do nome, média mensal ou anual de faturamento, taxa de crescimento etc.

Exemplo:

Antes) Base “bruta” extraída do repositório de dados

Depois) Base “tratada” após tarefas de tratamento

Não tem jeito. Essas etapas da extração e limpeza dos dados são as mais demoradas em qualquer projeto de dados, seja uma análise exploratória, um dashboard ou mesmo um modelo de Machine Learning.

Essa pesquisa da Forbes é bem real. Veja:

Fonte: https://bit.ly/43AqtYC

Show! Fechamos a segunda e terceira etapa do CRISP-DM.

Mas claro, ainda temos muito o que falar para você dominar os projetos de dados.

Inscreva-se em nossa newsletter para ser notificado quando os próximos posts forem publicados. Tem MUUITAAA coisa legal e exclusiva que queremos compartilhar com você.

No próximo post vamos falar sobre a etapa de análise e modelagem, a parte mais legal na minha opinião. É nesta etapa que geramos os insights das análises que vamos desenvolver.

Ah, e claro, aluno da Preditiva já tem acesso imediato a esse conteúdo em vídeo, ainda mais detalhado e pronto para utilização em nossa plataforma.

Não é aluno? WHAT? Então inscreva-se hoje e aprenda a analisar dados do jeito certo, sem enrolação. Clique aqui.

Nos vemos no próximo post. :)

Vinícius Souza
Bacharel em Matemática Aplicada pelo IME-USP, possui mais de 17 anos de experiência no mercado financeiro e no de serviços de Atendimento ao Cliente. Criou soluções em Analytics nas mais diversas áreas, entre elas: Auditoria Interna, Compliance, Risco de Crédito e Cobrança. Atuou como Head de Ciência de Dados em uma das maiores Fintechs do Brasil.
Continue lendo...
Deep Learning: o que é e para que serve
LER MAIS
Inferência na Análise de Dados
LER MAIS
Desafios atuais da Análise de Dados
LER MAIS
O futuro do Mercado de Trabalho com a Análise de Dados
LER MAIS
Newsletter Preditiva
Inscreva-se e fique por dentro de tudo que acontece no mercado de análise de dados
Obrigado! Aguarde nossas notícias no e-mail escolhido.
Ops. Alguma coisa deu errado.