InfoDireta

logo oficial

InfoDireta

Correlação Pearson e Spearman: Definições e implementação em Python

A correlação é uma medida estatística que descreve a relação entre duas variáveis. Ela indica se e como as mudanças em uma variável estão associadas às mudanças em outra. Essa ferramenta é crucial em diversas áreas, desde finanças até ciência de dados, pois nos ajuda a entender melhor os padrões nos dados e a fazer previsões mais precisas.

Neste artigo, vamos explorar alguns conceitos fundamentais de correlação e como implementá-los em Python usando a biblioteca `numpy` e `pandas`.

Tipos de Correlação

Vamos explicar melhor cada tipo de correlação e discutir como escolher qual usar, dependendo do contexto e das características dos dados:

Correlação de Pearson:

  • Descrição: A correlação de Pearson mede a força e a direção da relação linear entre duas variáveis contínuas. Ela é calculada dividindo a covariância das variáveis pelo produto de seus desvios padrão. Varia de -1 a 1, onde:
    • 1 indica uma correlação positiva perfeita.
    • 0 indica nenhuma correlação.
    • -1 indica uma correlação negativa perfeita.
  • Quando usar:
    • Quando os dados seguem uma distribuição normal e exibem uma relação linear.
    • Para variáveis contínuas.
  • Limitações:
    • Sensível a outliers: Valores extremos podem distorcer a correlação.
    • Exige linearidade: A correlação de Pearson pode não capturar relações não lineares entre as variáveis.

Correlação de Spearman:

  • Descrição: A correlação de Spearman avalia a relação monotônica entre duas variáveis, ou seja, se quando uma variável aumenta, a outra também tende a aumentar (ou diminuir). Ela é calculada a partir das classificações das observações em vez dos próprios valores. Varia de -1 a 1, onde:
    • 1 indica uma correlação positiva perfeita.
    • 0 indica nenhuma correlação.
    • -1 indica uma correlação negativa perfeita.
  • Quando usar:
    • Quando os dados não seguem uma distribuição normal ou exibem relações não lineares.
    • Para variáveis ordinais ou contínuas.
  • Vantagens:
    • Robusto a outliers: A correlação de Spearman é menos sensível a valores extremos.
    • Não exige linearidade: Captura relações monotônicas, mesmo que não sejam lineares.

Escolhendo entre as correlações

Ao escolher entre correlação de Pearson e Spearman, considere o seguinte:

  1. Tipo de dados: Se os seus dados são contínuos e seguem uma distribuição normal, a correlação de Pearson pode ser mais apropriada. No entanto, se os dados são ordinais ou não seguem uma distribuição normal, a correlação de Spearman pode ser mais adequada.
  2. Presença de outliers: Se os seus dados contêm outliers ou são influenciados por valores extremos, a correlação de Spearman é mais robusta e pode fornecer uma medida mais confiável da relação entre as variáveis.
  3. Natureza da relação: Se você está interessado apenas na direção geral da relação entre as variáveis e não na sua forma específica, a correlação de Spearman pode ser mais útil, pois captura relações monotônicas independentemente da linearidade.

Em suma, a escolha entre correlação de Pearson e Spearman depende das características dos seus dados, da presença de outliers e da natureza da relação que você está tentando analisar. É sempre uma boa prática explorar ambas as medidas e interpretar os resultados com cautela, considerando o contexto específico do problema.

O que são outliers?

Outliers são pontos de dados que se destacam significativamente dos demais em um conjunto de dados. Eles podem ser valores extremamente altos ou baixos em relação ao restante dos dados e muitas vezes não seguem o mesmo padrão ou distribuição que a maioria das observações. Em outras palavras, outliers são observações que são incomuns ou anômalas em comparação com o restante do conjunto de dados.

A presença de outliers pode ter um impacto significativo em análises estatísticas e modelos de aprendizado de máquina, podendo distorcer os resultados e afetar a interpretação dos dados. Por isso, é importante identificar e, se necessário, tratar esses valores antes de realizar análises mais aprofundadas.

Existem várias técnicas para detectar outliers, incluindo métodos estatísticos, como o uso de intervalos interquartis e z-score, além de abordagens mais avançadas, como algoritmos de detecção de anomalias. Uma vez identificados, os outliers podem ser tratados de diferentes maneiras, como remoção, transformação ou atribuição de valores substitutos.

Em resumo, outliers são pontos de dados incomuns que podem distorcer análises estatísticas e modelos de dados, e é importante identificá-los e tratá-los adequadamente para obter insights precisos a partir dos dados.

O comportamento de cada tipo de correlação com dados outliers

Correlação de Pearson:

A correlação de Pearson pode ser influenciada por outliers, pois calcula a covariância entre as variáveis, o que pode ser distorcido por valores extremos. Quando há outliers em um conjunto de dados:

  • Outlier positivo: Um único valor extremamente alto ou baixo pode distorcer a linha de melhor ajuste, aumentando ou diminuindo a correlação. Isso pode levar a uma superestimação ou subestimação da correlação, dependendo da direção do outlier.
  • Outlier negativo: Similar ao outlier positivo, um valor extremamente baixo pode distorcer a relação linear, afetando a magnitude da correlação. Novamente, a direção do outlier afeta se a correlação é superestimada ou subestimada.

Correlação de Spearman:

A correlação de Spearman, por outro lado, é menos sensível a outliers, pois se baseia na ordem dos dados, em vez de seus valores específicos. Isso significa que ela avalia a monotonicidade da relação entre as variáveis, em vez da linearidade. Portanto:

  • Outliers: A presença de outliers não afeta tanto a correlação de Spearman, desde que a ordem relativa dos dados não seja drasticamente afetada pelos valores extremos. A correlação de Spearman é mais robusta em lidar com dados que não seguem uma distribuição normal ou são influenciados por outliers.

Em resumo, enquanto a correlação de Pearson pode ser distorcida por outliers devido à sua sensibilidade a valores extremos, a correlação de Spearman tende a ser mais robusta, pois avalia a ordem dos dados em vez de seus valores absolutos. Portanto, ao lidar com conjuntos de dados que contenham outliers, pode ser mais prudente usar a correlação de Spearman ou realizar uma análise mais aprofundada para entender o impacto dos outliers nos resultados da correlação.

Correlação vs causalidade

A principal diferença entre correlação e causalidade é que correlação simplesmente descreve a relação entre variáveis, enquanto causalidade implica que uma variável influencia diretamente a outra. Correlação não implica causalidade, ou seja, duas variáveis podem estar correlacionadas sem que uma seja a causa da outra. Por exemplo, a venda de sorvete e o número de afogamentos em uma praia podem estar correlacionados, mas isso não significa que comer sorvete cause afogamentos.

Em resumo, enquanto correlação descreve a associação entre variáveis, causalidade descreve a relação de causa e efeito entre elas. É importante interpretar as relações entre variáveis com cautela, especialmente ao inferir causalidade a partir de correlações. A causalidade requer uma análise mais cuidadosa e a consideração de múltiplos critérios e métodos específicos.

No site abaixo você encontrará diversos exemplos de alta correlação sem nenhuma causalidade de uma forma cômica.

Popularity of the first name Eleanor correlates with Wind power generated in Poland (r=0.993) (tylervigen.com)

Implementação em Python

Vamos ver como calcular a correlação entre variáveis usando Python. Primeiro, vamos importar as bibliotecas necessárias e criar alguns dados de exemplo:

 

import numpy as np

import pandas as pd

# Criando dados de exemplo

dados = {

    'Idade': np.random.randint(18, 65, 100),

    'Salário': np.random.randint(20000, 90000, 100),

    'Pontuação': np.random.randint(0, 100, 100)

}

df = pd.DataFrame(dados)

Agora que temos nossos dados, vamos calcular as correlações de Pearson e Spearman:

 

# Correlação de Pearson

correlacao_pearson = df.corr(method='pearson')

print("Correlação de Pearson:")

print(correlacao_pearson)

# Correlação de Spearman

correlacao_spearman = df.corr(method='spearman')

print("\nCorrelação de Spearman:")

print(correlacao_spearman)

 

Interpretando os Resultados

Após executar o código acima, você verá as matrizes de correlação para Pearson e Spearman. Cada valor na matriz representa a correlação entre as variáveis correspondentes. Quanto mais próximo de 1 ou -1, mais forte é a correlação, enquanto valores próximos de 0 indicam pouca ou nenhuma correlação.

Entender a correlação entre variáveis é essencial para análise de dados e tomada de decisões informadas. Neste artigo, exploramos como calcular correlações de Pearson e Spearman usando Python. Lembre-se de que a correlação não implica causalidade e é importante interpretar os resultados com cautela, considerando o contexto dos dados.

Experimente aplicar esses métodos em seus próprios conjuntos de dados para descobrir padrões e insights úteis!

 Até a próxima! 😉

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *