0Pricing
Learn AI with Python · Aula

Correlação e covariância

Correlação de Pearson e Spearman, matriz de covariância e interpretação da correlação no contexto do aprendizado de máquina.

Correlação e covariância é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.

Medindo relações

Covariância e correlação quantificam como duas variáveis se movem juntas. Elas são a base da seleção de características, da teoria de portfólios e da análise exploratória.

Covariância

Covariância é positiva quando as variáveis crescem juntas e negativa quando uma cresce enquanto a outra diminui. Sua magnitude depende das unidades, o que torna a covariância bruta difícil de interpretar.

import numpy as np
x = np.array([1, 2, 3, 4, 5])
y = np.array([2, 4, 5, 4, 6])
print(np.cov(x, y, ddof=1))   # 2x2 covariance matrix

A matriz de covariância

np.cov retorna uma matriz: as diagonais são variâncias e as posições fora da diagonal contêm a covariância entre os pares. Ela se generaliza para muitas variáveis e fundamenta a PCA.

data = np.array([[1, 2, 3], [2, 4, 5], [3, 6, 7]], dtype=float)
print(np.cov(data.T))   # 3x3 covariance matrix of the columns

Correlação: covariância escalada

A correlação de Pearson redimensiona a covariância para o intervalo de -1 a 1, dividindo-a pelo produto dos desvios padrão; assim, ela não tem unidade e pode ser comparada.

print(np.corrcoef(x, y))   # 2x2 correlation matrix, diagonal is 1

Interpretando a correlação

+1 representa uma relação positiva LINEAR perfeita, -1 uma relação negativa perfeita e 0 nenhuma relação LINEAR. Valores próximos de 0 ainda podem esconder um padrão não linear forte.

Correlação no pandas

df.corr() calcula simultaneamente as correlações entre pares de todas as colunas numéricas, sendo a maneira mais rápida de examinar um conjunto de dados em busca de relações.

import pandas as pd
df = pd.DataFrame({"a": [1,2,3,4,5], "b": [2,4,5,4,6], "c": [9,7,6,5,3]})
print(df.corr())   # Pearson by default

Pearson versus Spearman

Pearson mede a associação LINEAR em valores brutos. Spearman trabalha com RANKS, portanto capta qualquer relação monotônica e é resistente a valores atípicos.

from scipy import stats
x = np.array([1, 2, 3, 4, 100])
y = np.array([1, 2, 3, 4, 5])
print(stats.pearsonr(x, y).statistic)    # distorted by outlier
print(stats.spearmanr(x, y).statistic)   # 1.0 (perfectly monotonic)

Escolhendo o método

df.corr(method="spearman") faz o pandas usar a correlação por postos. Prefira Spearman quando houver valores atípicos ou relações não lineares, mas monotônicas; use Pearson para dados lineares e limpos.

print(df.corr(method="spearman"))

Correlação é NOT causalidade

Uma correlação forte não significa que uma variável cause a outra. Um fator de confusão oculto pode influenciar ambas. Pergunte sempre o que mais poderia explicar essa relação.

Correlação espúria

Com variáveis suficientes, algumas apresentarão correlação por puro acaso. As vendas de sorvete e os afogamentos se correlacionam porque ambos são influenciados pelo calor do verão, e não um pelo outro. Trate correlações inesperadas com ceticismo.

Visualizando com um heatmap

Um heatmap de correlação torna os padrões evidentes. Pares de características fortemente correlacionadas podem ser redundantes e candidatos à remoção antes da modelagem.

# import seaborn as sns
# sns.heatmap(df.corr(), annot=True, cmap="coolwarm")

Verificação rápida

Teste seus conhecimentos sobre correlação.

Recapitulação

Kit de ferramentas de correlação:

  • A covariância mostra a direção, mas depende da unidade; np.cov fornece a matriz
  • A correlação é redimensionada para -1..1: np.corrcoef, df.corr()
  • Pearson (linear) versus Spearman (por postos, robusta, monotônica)
  • Correlação não é causalidade; tenha cuidado com fatores de confusão e relações espúrias

Perguntas Frequentes

A aula “Correlação e covariância” é grátis?

Sim — o texto completo de “Correlação e covariância” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.

O que vou aprender em “Correlação e covariância”?

Correlação de Pearson e Spearman, matriz de covariância e interpretação da correlação no contexto do aprendizado de máquina. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Learn AI with Python?

Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Correlação e covariância”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Learn AI with Python?

Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Estatística descritiva e distribuições
  2. Probabilidade e teorema de Bayes
  3. Testes de hipóteses
  4. Correlação e covariância
← Voltar para Learn AI with Python