|Descomplicando o EDA: como aplicar a análise exploratória de dados na prática

Rodrigo Pasqualucci
Datarisk.io
Published in
19 min readMar 12, 2021

Duas novas abordagens para usar essa ferramenta poderosa chamada EDA

Fonte: Canva.com (imagem adquirida pelo autor)

Um tema muito comum em livros e cursos de Ciências de Dados e que gera grandes dúvidas, especialmente para aqueles que são iniciantes na área de dados, é o tão comentado EDA.

Afinal “What is the EDA?” (inspirei-me no filme The Matrix, na cena em que o protagonista Neo pergunta pela primeira vez à personagem Trinity: What is the Matrix?).

O objetivo desse artigo é desmistificar o EDA e “entregar” para o leitor uma abordagem prática e simples, baseando-se em 2 técnicas que desenvolvi, denominadas de EDA Local e EDA Global, para tirar o máximo proveito desse método riquíssimo dentro de um projeto profissional ou acadêmico no mundo de dados.

|O QUE É EDA?

A sigla significa Exploratory Data Analysis e trata-se de uma abordagem na análise de dados que emprega uma abundância de técnicas, principalmente gráficas, com intuito de:

  • supor a HISTÓRIA DOS DADOS;
  • maximizar insights a partir dos dados;
  • detectar outliers e/ou inconsistências nos dados;
  • extrair features (variáveis independentes) candidatas para a modelagem.

|O QUE É EDA LOCAL?

Ambas as metodologias, EDA Local e EDA Global, permitem ao responsável pelo estudo dos dados ter maior controle e entendimento da(s) base(s) de dados do seu projeto.

Para começar, vamos explorar o EDA Local.

O EDA Local é uma sistemática que permite pressupor a HISTÓRIA DOS DADOS, sem depender de um dicionário de dados, conectando fatos ou situações. Essa técnica permite levantar hipóteses e perguntas que deverão ser sanadas junto à Área de Dados ou à Área de Negócios da empresa e, desta maneira, ter a compreensão verdadeira da HISTÓRIA DOS DADOS.

E como essa técnica funciona na prática?

Na base de dados, procure uma coluna (geralmente definida como ‘ID’) para identificar todas as informações daquele registro na base de dados; o ‘ID’ é a coluna mais comum que pode ser usada como exemplo, mas é possível que exista outra que faça tal papel.

Através desse ‘ID’, “navegue” e procure entender qual a história dele em cada base de dados. Com o tempo, você perceberá que, conforme for percorrendo cada base de dados, a compreensão se tornará cada vez mais natural. É importante ter em mente que os escopos do EDA Local são:

  • ter uma visão mais focada do que está acontecendo com tal ‘ID’ ao longo de cada base de dados;
  • ter uma suposição da HISTÓRIA DOS DADOS, ou seja, o que os dados nos “contam” para posterior confirmação com empresa;
  • anotar possíveis dúvidas e/ou perguntas a serem respondidas pela Área de Dados ou pela Área de Negócios da empresa para um entendimento fidedigno da HISTÓRIA DOS DADOS.

Por exemplo: vamos imaginar um projeto profissional de Ciência de Dados englobando 5 bases de dados (A, B, C, D e E) de clientes solicitantes de crédito. Para iniciarmos nossa jornada no EDA Local, sugiro que selecione aleatoriamente um ‘ID’ da sua base de dados. No exemplo, utilizaremos o ‘ID’ 445 que será nossa referência em cada conjunto de dados. Agora é hora de se divertir e adivinhar o que está acontecendo, tentando responder a pergunta: “O que podemos supor em cada base de dados com o ‘ID’ 445?”

Fonte: Próprio autor
  • data_referenc.: provável coluna de data, no formato Ano-Mês-Dia.
  • X_1_30, X_1_45, e X_1_60: possíveis colunas de contagem de valores, como por exemplo atrasos de pagamento, quantidade de contratos de crédito etc. Além disso, os valores 30, 45 e 60 podem representar números em formato de dias.
Fonte: Próprio autor
  • date_reference: provável coluna de data, no formato Ano-Mês-Dia.
  • Segmt_Credito: pode ser algo relacionado a crédito que varia entre 1 e 5. Talvez outra base de dados possa ajudar a entender essa coluna, portanto anote e reserve essa dúvida para depois.
  • FLAG: parece tratar-se de algum tipo de contrato ou plano de crédito com o nome de AZUL ou VERDE. Anote e esclareça com a empresa mais tarde.
  • SAFRA: provavelmente seja uma data no formato Ano-Mês. Observe na 2ª linha uma possível inconsistência (registro 199909) que talvez seja um erro de digitação, já que as outras linhas seguem um padrão.
  • APROVADO: talvez seja uma coluna de aprovação de crédito onde o número 1 pode significar ‘aprovado’ e o 0 ‘não aprovado’.
  • date: provável coluna de data, no formato Ano-Mês-Dia.
  • Y_1m, Y_2m e Y_3m: podem ser colunas que tratem de movimentação de valores ao longo do tempo, como por exemplo o extrato bancário ou empréstimo.
  • 1, 2 e 3: possíveis números no formato de meses.
Fonte: Próprio autor
  • dataReferencia: provável coluna de data, no formato Ano-Mês-Dia.
  • Data_Nascimento: pode-se considerar uma coluna de data de nascimento do cliente.
  • Estado: talvez seja a coluna do Estado do Brasil, por exemplo PA (Pará) e SP (São Paulo).
  • CEP: possível ser o Código de Endereçamento Postal de cada estado brasileiro.
Fonte: Próprio autor
  • data_score: provável coluna de data, no formato Ano-Mês-Dia.
  • cpf: suposta coluna do ‘id’ do cliente. Talvez o nome da coluna ‘cpf’ tenha sido equivocamente digitado.
  • Classific: talvez seja o Score de crédito do cliente. Repare que a cada mudança de mês existe um novo valor imputado.
  • ClusterCrd: possível cluster do Score de crédito do cliente, com a classificação separada a cada 200 de pontuação. Por exemplo:

NOTA: por mais óbvias que algumas colunas sejam, é fundamental esclarecer as dúvidas em todas as suposições levantadas. O importante é ter 100% de certeza por mais evidente que seja.

| QUAL É A SUPOSTA HISTÓRIA DOS DADOS?

Com base nos dados podemos imaginar que:

  • Seja uma pessoa na faixa etária dos 30 anos;
  • Morador(a) no estado do Pará durante o ano de 2019;
  • Aparenta saúde financeira até o final de 2019, já que na coluna APROVADO contém a referência 1 e o campo Score de Crédito varia entre 600 e 1000;
  • A partir do ano de 2020, talvez em razão da pandemia, a pessoa tenha perdido o emprego e começou a se endividar, ocasionando retorno à São Paulo, suposta cidade natal, para refazer sua vida financeira e profissional.

Estas considerações soam coerentes com o que pudemos analisar nas bases de dados. Agora que já temos uma “história para contar” vamos começar as confirmações.

Como fazer isso?

Você deve perguntar e esclarecer toda e qualquer dúvida junto à Área de Dados ou à Área de Negócios da empresa. Só assim, teremos certeza do significado de cada coluna para então confirmar e/ou ajustar nossas hipóteses para ter uma HISTÓRIAS DOS DADOS verdadeira.

|O QUE É EDA GLOBAL?

Uma vez entendido o EDA Local, partimos agora para a técnica chamada de EDA Global.

Trata-se de uma visão puramente matemática dos dados; aqui teremos que utilizar abordagens estatísticas para “mergulhar” na análise descritiva de cada coluna da(s) base(s) de dados.

Uma ferramenta interessante para ser aplicada no EDA Global é a biblioteca do Python chamada pandas profiling, que proporciona um excelente resumo das principais medidas descritivas, disponibiliza gráficos e detecta inconsistências nos dados, como por exemplo, duplicidades, dados negativos, valores faltantes ou nulos etc.

Antes de conduzirmos o exemplo prático, é oportuno elencar os objetivos do EDA Global:

  • detectar possíveis inconsistências nos dados (erros de digitação por exemplo);
  • ter um entendimento global das medidas descritivas e, portanto, da distribuição estatística dos dados;
  • ter um entendimento global dos problemas na base de dados como dados negativos, nulos, faltantes, outliers etc.;
  • anotar possíveis dúvidas e/ou perguntas a serem respondidas pela Área de Dados ou pela Área de Negócios da empresa.

Para ilustrar o EDA Global na prática, usaremos apenas funções da linguagem Python para calcular as medidas descritivas e plotar os gráficos pertinentes; deixarei o pandas profiling como convite para que testem em algum momento no projeto de vocês, vale muito a pena conferir tal ferramenta.

Variável dependente (target)

Como estamos focados em um problema de crédito, geralmente o ponto de partida costuma ser a plotagem do gráfico em barras da variável target a fim de visualizar sua proporção entre classes.

Reparem no Gráfico 1 que a target apresenta desbalanceamento nos dados e, portanto, tornar-se necessário reservar algum tipo de tratamento na etapa de modelagem (sugestão: Oversampling ou Undersampling).

Gráfico 1 — Percentual de cada classe da variável target

Variáveis independentes (features)

Antes de partimos para o exemplo prático, é importante sabermos a definição de Estatística Descrita, pois será o alicerce para o EDA Global. Trata-se de um ramo da estatística que possibilita resumir, descrever e compreender uma base de dados utilizando 4 medidas estatísticas, a saber:

  • Medidas de posição: são valores que representam a tendência de concentração dos dados observados; envolvem principalmente os valores de média, mediana e moda;
  • Medidas de dispersão: medem o grau de variabilidade dos elementos de uma distribuição, incluindo os valores de mínimo, máximo, desvio padrão, variância, percentis, quartis e decis;
  • Medidas de associação: indicam a presença de relação ou associação numérica entre as variáveis. Fazem parte dessas medidas: a correlação e a variância;
  • Medidas de distribuição: permitem caracterizar e interpretar o tipo de distribuição estatística por meio da assimetria e curtose. Aproveitamos para incluir um quadro de cada grandeza para ajudar no entendimento.

Assimetria

A partir do cálculo do coeficiente de assimetria, basta acessar o quadro para classificar o tipo de simetria.

O formato da curva possibilita ao leitor “enxergar” também que tipo de modificação pode ser aplicada nos dados: transformações lineares ou não lineares (Data Transformation)

Fonte: https://www.allaboutcircuits.com/technical-articles/understanding-the-normal-distribution-parametric-tests-skewness-and-kurtosis/ (*)

(*) apenas traduzi os termos para o português.

Curtose

Uma vez calculado o coeficiente de curtose, basta acessar o quadro para classificar o tipo de curtose.

Dependendo do formato da curva de densidade e dos valores obtidos podemos ter:

  • Platicúrtica = variabilidade e desvio padrão altos;
  • Leptocúrtica = variabilidade e desvio padrão baixos;
  • Mesocúrtica = variabilidade e desvio padrão médios.
Fonte: http://www.portalaction.com.br/estatistica-basica/26-curtose

Neste estágio, as medidas descritivas e a plotagem dos gráficos (histograma, dispersão e boxplot) serão os holofotes centrais para que possamos ter a percepção estatística dos dados.

Para que o assunto não se prolongue tanto, utilizaremos 3 features: idade, salário mensal e linhas de crédito em aberto; os respectivos comentários estarão pontuados logo em seguida. Não se preocupe: esta amostra não comprometerá a conclusão do estudo e servirá como uma “bússola” para que você consiga aplicar no seu projeto, seja ele qual for.

Fonte: Próprio autor

IDADE

  • A média de idade dos registros é de 52 anos;
  • O desvio padrão dos dados é de 15 anos. Esse valor mostra o quanto se erra ao presumir que todos os dados são representados pela média, isto é, qual o risco envolvido ao usar a média na tomado de decisão. Além disso, o desvio padrão também nos fornece uma noção ou “sensação” da variabilidade dos dados;
  • A idade mínima é de 0 anos (possível inconsistência nos dados, pois 0 anos não deveria estar na base de dados);
  • A idade máxima é de 109 anos (possível inconsistência nos dados, já que é uma idade bem incomum);
  • Análise dos Quartis: nos informam o volume de dados em cada quartil.

Q1 nos mostra que 25% dos dados tem até 41 anos e o restante (75%) tem a idade superior a 41 anos.

Q2 nos mostra que 50% dos dados tem até 52 anos e a outra metade (50%) está acima dessa idade.

Q3 nos mostra que 75% tem até 63 anos e o restante (25%) possui idade superior a isso.

SALÁRIO_MÊS

  • A média salarial mensal é de $6.637;
  • O desvio padrão dos dados é de $13.384. Esse valor mostra o quanto se erra ao presumir que todos os dados são representados pela média, isto é, qual o risco envolvido ao usar a média na tomado de decisão. Além disso, o próprio desvio padrão também nos fornece uma noção ou “sensação” da variabilidade dos dados;
  • O salário mensal mínimo é de $0.0 (possível inconsistência nos dados);
  • O valor máximo salarial é de $3.008.750 (possível inconsistência nos dados);
  • Análise dos Quartis: nos informam o volume de dados em cada quartil.

Q1 nos mostra que 25% dos dados possui um salário de até $3.400/mês e o restante (75%) dos dados tem uma remuneração acima desse montante.

Q2 nos mostra que 50% dos dados ganha mensalmente até $5.400 e a outra metade (50%) dos registros está acima desse valor.

Q3 nos mostra que 75% recebe um pagamento por mês de até $8.225 e o restante (25%) das linhas ganha um salário mensal superior a esta quantia.

LINHAS_CRÉDITO_ABERTO

  • Média de 8 linhas de crédito em aberto nos registros;
  • O desvio padrão das linhas é de 5. Esse valor mostra o quanto se erra ao presumir que todos os dados são representados pela média, isto é, qual o risco envolvido ao usar a média na tomada de decisão. O próprio desvio padrão também nos fornece uma noção ou “sensação” da variabilidade dos dados;
  • A quantidade mínima de linhas de crédito em aberto é de 0 e a máxima é de 58 (possíveis inconsistências nos dados);
  • Análise dos Quartis: nos informam o volume de dados em cada quartil.

Q1 nos mostra que 25% dos dados tem até 5 linhas de crédito em aberto e o restante (75%) tem uma quantidade superior.

Q2 nos mostra que 50% dos dados tem até 52 anos e a outra metade (50%) está acima dessa idade.

Q3 nos mostra que 75% tem até 63 anos e o restante (25%) possui idade superior.

NOTA: não deixe de anotar toda e qualquer dúvida para esclarecê-las com a Área de Dados ou a Área de Negócios da empresa, principalmente as possíveis inconsistências nos dados destacadas nessa investigação.

Histograma

Também conhecido como distribuição de frequências, o histograma representa graficamente uma base de dados dividida em classes ou categorias (uniformes ou não uniformes) no formato de barras retangulares. Esse gráfico serve para nos mostrar 5 aspectos:

  • Assimetrias;
  • Variabilidade (dispersão);
  • Outliers;
  • Frequências (%);
  • Picos (maior de frequências).

Agora que sabemos o conceito e como usá-lo, empregamos os códigos abaixo para plotar os histogramas de cada feature previamente selecionada: IDADE, SALÁRIO_MÊS e LINHAS_CRÉDITO_ABERTO.

Fonte: Próprio autor

Para complementar nosso estudo, vamos calcular as medidas de distribuição que permitem entender ainda mais o formato da curva de densidade da base de dados:

Fonte: Próprio autor

IDADE

  • Com base nos valores de assimetria e curtose, podemos classificar a curva de densidade estatística do tipo simétrica e mesocúrtica (possivelmente teremos variabilidade e desvio padrão médios);
  • Notamos 2 setores no histograma que indicam a presença de outliers (vide pontos 1 e 2 indicados no gráfico);
  • Observamos 4 picos de frequência em 4 faixas de idades diferentes: aproximadamente 33, 48, 63 e 75 anos;
  • Finalmente, a leitura do gráfico nos evidencia uma região central onde concentra-se grande parte dos dados (faixa etária entre 40 e 60 anos).

SALÁRIO_MÊS

  • Com base nos valores de assimetria e curtose, podemos classificar a curva de densidade estatística do tipo simétrica e mesocúrtica (provavelmente teremos variabilidade e desvio padrão médios);
  • Apenas se pode observar um pico único de faixa salarial entre 0 e $8000; esse fato, de pouca ou quase nada de avaliação a ser concluída, pode acontecer durante sua análise de dados com bastante frequência.

LINHAS_CRÉDITO_ABERTO

  • Com base nos valores de assimetria e curtose, podemos classificar a curva de densidade estatística do tipo assimétrica positiva e leptocúrtica (teoricamente teremos variabilidade e desvio padrão baixos);
  • Notamos no histograma uma região que indica a presença de outliers (vide ponto 1 indicado no gráfico);
  • Observamos um pico de frequência único, aproximadamente 6 linhas de crédito em aberto, contendo 20mil registros;
  • Finalmente, o gráfico evidencia uma região central na qual concentra-se grande parte dos dados: entre 5 e 11 linhas de crédito em aberto.

|SELEÇÃO DE FEATURES

Para fecharmos este artigo com chave de ouro, vamos pôr em pauta nosso último tópico: seleção de variáveis independentes. Isso mesmo, a análise exploratória de dados também permite selecionar features que podem ser importantes para prever a target em nosso projeto.

Como em qualquer laboratório de química, devemos SEMPRE testar tais palpites, durante o processo de modelagem, para termos segurança que as features pré-escolhidas sejam adequadas para o modelo.

Pode até parecer um pouco abstrato de início, mas o “cardápio” das possíveis features será obtido por meio de um artifício visual, atentando-se para a percepção de “movimento” nos gráficos (explicarei isso já já). A segunda forma baseia-se em um estudo matemático: análise de correlação entre as variáveis.

Visualizando os gráficos

Antes de iniciarmos a explicação, vamos para uma rápida definição de cada gráfico.

O gráfico de dispersão é uma representação gráfica da associação entre pares de dados com foco no seu “comportamento”. Ele serve para mensurar e visualizar a relação entre duas variáveis numéricas a fim de verificar se há uma associação linear entre os pares. Caso seja uma associação não linear, o gráfico terá o comportamento quadrático, cúbico, e assim por diante. Procure visualizar essa “conduta”, buscando notar padrões nos dados, isto é: dados dispersos, dados agrupados, dados em movimento crescente, dados em movimento decrescente e assim por diante.

Já o diagrama de caixa, ou boxplot, é um gráfico que avalia diferentes aspectos dos dados. Por isso, ele pode ser intitulado como um histograma sofisticado. E quais seriam estes aspectos? Podemos citar por exemplo a assimetria (é a posição da linha central que está dentro da ‘caixa’), o comprimento das caudas (a partir da extremidade da caixa até os pontos extremos), a dispersão (simbolizada pelo tamanho da ‘caixa’), a localização (representada pela linha central da ‘caixa’; é a própria mediana) e os outliers (indicados pelos extremos, a partir do Limite Superior ou Inferior).

Agora que temos o contexto do que é e para que serve cada gráfico, vamos entender como aplicá-los na prática para a seleção de features.

O que podemos notar em cada gráfico de dispersão plotado a seguir? Fizemos um resumo para ajudá-los.

Fonte: Próprio autor

Se olharmos o “comportamento” da variável IDADE, o gráfico parece espelhado, não se notando “movimento” nele. A conclusão que podemos ter é que a variação da idade não parece fazer diferença ao definir se a pessoa é boa ou má pagadora. Aparentemente, a idade não parece ser uma variável interessante para a modelagem, porém é preciso olhar o boxplot para confirmar ou dar outra visão dessa feature.

Fonte: Próprio autor

Aqui no gráfico do salário mensal, percebemos que ele não está espelhado e, portanto, há “movimento” entre eles. A conclusão à qual se chega é que essa variável ajuda a separar o bom do mau pagador. A variável SALÁRIO_MÊS parece ser uma candidata para a modelagem. Novamente, é importante olhar o boxplot para obter outra percepção a respeito.

Fonte: Próprio autor

No último gráfico, assim como no primeiro, percebemos o espelhamento entre as classes. Portanto, não existe “movimento”. Podemos presumir que essa feature não auxilia a identificar o indivíduo como bom ou mau pagador. Provavelmente, a feature LINHAS_CRÉDITO_ABERTO não aparenta ser relevante para a modelagem; observar o boxplot é recomendado para este caso.

Fonte: Próprio autor

Ao visualizarmos a mediana (linha central do boxplot) de cada classe (0 ou 1), percebemos facilmente que ela possui valores diferentes e, desta forma, existe o tal “movimento” no gráfico que tanto buscamos. Aqui, a tendência revela que indivíduos mais jovens são propensos à inadimplência ao contrário de pessoas mais velhas. Diferentemente do gráfico de dispersão, o boxplot nos sugere outra visão: a variável IDADE é uma feature interessante para ser utilizada no modelo para prever y.

Fonte: Próprio autor

Ao observamos a mediana (linha central mais fina) de cada categoria (0 ou 1), notamos que ela possui exatamente o mesmo valor e, portanto, não há “movimento” neste gráfico. Um salário alto ou baixo não parece ajudar a separar bons de maus pagadores. Conclusão: o boxplot nos propõe que essa feature não é relevante para a modelagem.

Fonte: Próprio autor

Finalmente, no último gráfico, identificamos que, praticamente, as medianas de cada classe são iguais (ausência de “movimento”). Mais uma vez, a quantidade de linhas de crédito em aberto não parece influenciar se uma pessoa será classificada como boa ou má pagadora. Moral da história: exatamente como observado no gráfico de dispersão, essa variável não parece ser essencial para ajudar a predizer a target.

NOTA: qualquer que seja a conclusão obtida pela avaliação visual, seja pelo gráfico de dispersão e/ou pelo boxplot, o ideal é SEMPRE testar toda e qualquer hipótese levantada. Os testes vão garantir que o “caminho” escolhido é apropriado na etapa de seleção de variáveis.

Análise de correlação

A correlação é uma técnica estatística que mostra como os pares de variáveis numéricas estão relacionados entre si, em termos de direção, intensidade e força. Para exemplificarmos, plotamos um heatmap que possibilita analisar estes fatores: direção (observe o sinal de positivo ou negativo); intensidade (o próprio valor da correlação); e força (as cores do diagrama que indicam se tal relação é fraca, média ou forte)

Fonte: Próprio autor

A análise de correlação também pode ser um caminho a ser seguido para a seleção de variáveis. Aqui, deve ser definido um valor de corte para aplicar o recurso. Geralmente, correlações iguais ou acima de 0.70 são uma ótima pedida, entretanto sugerimos que faça testes com outros cortes: 0.8, 0.85, 0.9 etc. (os valores negativos também devem ser incluídos nesse corte; foque no valor da correlação e deixe de lado o sinal para não confundir).

E agora, como fazer a seleção de variáveis independentes?

Sugiro plotar uma tabela com a função .corr() do Pandas e analisar no próprio Jupyter notebook ou framework que preferir. Neste artigo, escolhemos o Excel por uma questão didática. O corte da análise de correlação desse exemplo será de 0.70. Reparem que a tabela de correlação é espelhada e separada por uma diagonal principal de 1s. Foquem apenas em uma das metades e sigam o passo a passo descrito a seguir.

Fonte: Próprio autor
Fonte: Próprio autor

Passo a passo:

1) Selecione e destaque todas as correlações com corte igual ou acima de 0.70 (ou outro valor de sua preferência).

2) Observe cada par de variáveis e escolha aquela que tiver o maior valor de correlação com a target. Exemplo: os pares v3-v1 apresentam correlação de 0.770787263; para saber qual dos pares comporá a lista de features para o modelo, observe qual possui a correlação mais forte com a target (lembre-se que valores próximos de 1 ou valores próximos de -1 indicam forte correlação). As setas vermelhas indicam o valor de correlação dos pares: target-v1 e target-v3. Portanto, nessa primeira rodada, a coluna v1 será a variável escolhida.

3) Anote em uma tabela o resultado de cada rodada.

4) Repita o mesmo procedimento para o restante dos pares e não se esqueça de contabilizar.

5) Agora, basta contar cada rodada para selecionar aquela que entrará na lista final (sugiro fazer uma nova tabela). Em caso de empate, incluir a variável. Exemplo:

  • variável v1: recebeu apenas uma vez o status USAR e nenhuma vez o status DESCARTAR. Portanto, tal variável obteve um ponto MANTER e zero pontos ELIMINAR.
  • variável v2: recebeu apenas uma vez o status USAR e três vezes o status DESCARTAR. Portanto, tal variável obteve um ponto MANTER e três pontos ELIMINAR.
  • variável v6: recebeu quatro vezes o status USAR e nenhuma vez o status DESCARTAR. Portanto, tal variável obteve quatro MANTER e 0 ELIMINAR.
  • variável v9: recebeu duas vezes o status USAR e uma vez o status DESCARTAR. Portanto, tal variável obteve dois MANTER e um ELIMINAR.
  • variável v13: não recebeu nenhuma vez o status USAR e duas vezes o status DESCARTAR. Portanto, tal variável obteve zero MANTER e dois ELIMINAR.
  • variável v17: não recebeu nenhuma vez o status USAR e uma vez o status DESCARTAR. Portanto, tal variável obteve zero MANTER e um ELIMINAR.

Finalmente, para encerrarmos a análise da correlação, basta olhar a tabela construída no passo 5) e fazer a seleção das variáveis. Neste caso, as features candidatas seriam: v1, v6 e v9.

Sugerimos a aplicação de diversos testes, com diferentes cortes, e a apuração dos resultados de cada modelo testado comparando as mesmas métricas de desempenho que você optar utilizar; esta experimentação comprovará toda e qualquer hipótese levantada.

|POR QUE O EDA É APLICADO DE FORMA SIMPLIFICADA EM PROJETOS DE CIÊNCIA DE DADOS?

Fui indagado com essa pergunta por um conhecido e acabei respondendo de volta com um: “DEPENDE”.

O EDA Local é sim uma abordagem que costuma ser usada com frequência em projetos profissionais de Data Science, pois ajuda o cientista de dados, ou a pessoa responsável pelo estudo, a supor a HISTÓRIA DOS DADOS para, em seguida, confirmar a versão final com a Área de Dados ou a Área de Negócios da empresa.

Já o EDA Global é feito, na prática, de forma mais resumida e direta, observando principalmente inconsistências nos dados como outliers, duplicidades, valores faltantes etc. Esta abordagem mais focada se deve pela grande quantidade de colunas na base de dados que acaba sendo um fator limitante de sua aplicação, especialmente em projetos de consultoria que envolvem prazos e respostas rápidas para o cliente: “Time is Money”.

Como estamos interessados em selecionar as melhores variáveis para o modelo, existem tantas técnicas no mundo de Machine Learning (RFE, Feature Importance, Regularization, entre outras) que o uso do EDA como selecionador de variáveis acaba não sendo tão praticado, apesar de ser uma das técnicas disponíveis.

|CONCLUSÃO FINAL

Tratamos de duas abordagens práticas de como “enxergar” mais profundamente o “poder” do EDA na análise de dados. Lembre-se que este artigo objetivou ajudar o leitor a ter mais uma ferramenta no “Kit Machine Learning”; nunca se esqueça do mantra do cientista de dados de testar qualquer hipótese na condução de um projeto de Ciência de Dados para obter o melhor resultado para o modelo: “Teste -Teste-Teste”.

A criatividade também deve ser uma aliada, especialmente para a técnica de Feature Engineering, a fim de refinar o desempenho do modelo.

Espero que tenha gostado do artigo, e para qualquer dúvida, fico à disposição de por e-mail ou via LinkedIn: terei o maior prazer em atendê-los.

|REFERÊNCIAS BIBLIOGRÁFICAS

--

--

Rodrigo Pasqualucci
Datarisk.io

Data Science | Machine Learning | Artificial Intelligence Enthusiast