Coeficiente de Correlação

O Coeficiente de Correlação é uma medida estatística que quantifica o grau de relacionamento linear entre duas variáveis. Ele indica se existe uma associação estatística entre as duas variáveis e a direção dessa associação (positiva ou negativa). Em outras palavras, o coeficiente de correlação descreve como as mudanças em uma variável estão relacionadas às mudanças na outra variável.



Existem vários tipos de coeficientes de correlação, sendo os dois mais comuns:

Coeficiente de Correlação de Pearson (Cr): O coeficiente de correlação de Pearson mede a relação linear entre duas variáveis contínuas. O Coeficiente de Pearson pode variar de -1 a 1, onde:

1 Indica uma correlação positiva perfeita (quando uma variável aumenta, a outra também aumenta na mesma proporção).
-1 Indica uma correlação negativa perfeita (quando uma variável aumenta, a outra diminui na mesma proporção).
0 Indica que não há correlação linear entre as variáveis.

Coeficiente de Correlação de Spearman (ρ ou rs): O coeficiente de correlação de Spearman é usado quando as variáveis não têm uma relação linear, mas podem ainda ter uma relação monótona. Ele é baseado na classificação das observações e mede a relação entre as classificações das duas variáveis. O coeficiente de Spearman também varia de -1 a 1, mas é mais robusto a outliers e a dados não lineares.


Fórmula do Coeficiente de Correlação de Pearson:

$$\large Cr(x,y) = \frac{cov(x, y)}{s(x) \cdot s(y)}$$

Sendo:

  • $cov(x,y):$ Covariância de x e y
  • $s(x):$ Desvio Padrão de x
  • $s(y):$ Desvio Padrão de y

Python :

# médias de x, y
xbar = sum(X) / len(X)
ybar = sum(Y) / len(Y)

# desvio padrão de x, y
sX = (sum(list(map(lambda x: ((x -xbar)**2), X))) / (len(X) - 1))**0.5
sY = (sum(list(map(lambda y: ((y - ybar)**2), Y))) / (len(Y) - 1))**0.5

# Covariância de x, y
Cov = sum(list(map(lambda x, y: (x - xbar) * (y - ybar), X, Y))) / (len(X) - 1)

# Coeficiente de correlação
Cr = Cov / (sX * sY)

Julia :

# médias de x, y
xmed = sum(X) / length(X)
ymed = sum(Y) / length(Y)

# desvio padrão de x, y
sX = (sum((X .- xmed).^2) / (length(X)-1))^0.5
sY = (sum((Y .- ymed).^2) / (length(Y)-1))^0.5

# Covariância de x, y
Cov = sum((X .- xmed) .* (Y .- ymed)) / (length(X) - 1)

# Coeficiente de correlação
Cov / (sX * sY)

Exemplos

 A tabela abaixo apresenta 2 variáveis, a variável independente Tamanho(m²) e variável dependente Preço.

Tamanho(m²)Preço
3057.000
3969.000
4977.000
6090.000

Vamos determinar seu coeficiente de correlação.

Python

X = [30, 39, 49, 60]
Y = [57000, 69000, 77000, 90000]

xbar = sum(X) / len(X)
ybar = sum(Y) / len(Y) 
sX = (sum(list(map(lambda x: ((x - xbar)**2), X))) / (len(X) - 1))**0.5 
sY = (sum(list(map(lambda y: ((y - ybar)**2), Y))) / (len(Y) - 1))**0.5 
Cov = sum(list(map(lambda x, y: (x - xbar) * (y - ybar), X, Y))) / (len(X) - 1)
Cr = Cov / (sX * sY)

# Resposta: Cr = 0.9962006267707775

Julia

X = [30, 39, 49, 60]
Y = [57000, 69000, 77000, 90000]

xmed = sum(X) / length(X)
ymed = sum(Y) / length(Y)
sX = (sum((X .- xmed).^2) / (length(X)-1))^0.5
sY = (sum((Y .- ymed).^2) / (length(Y)-1))^0.5
Cov = sum((X .- xmed) .* (Y .- ymed)) / (length(X) - 1)
Cov / (sX * sY)

Resposta: Como o resultado se aproximou de 1, isso indica uma forte correlação positiva entre a variável dependente e independente, portanto, a variação do preço das casas pode ser explicada pela variação nos seus tamanhos.



Coeficiente de Determinação

O Coeficiente de Determinação, frequentemente representado como $\large R^{2}$, é uma medida estatística que fornece informações sobre a qualidade de um modelo de regressão linear. Ele representa a proporção da variabilidade na variável dependente que é explicada pelas variáveis independentes incluídas no modelo. Em outras palavras, o $\large R^{2}$ indica o quanto os valores previstos pelo modelo se aproximam dos valores reais observados.

O $\large R^{2}$ varia de 0 a 1 (ou 0% a 100%), e seu valor é interpretado da seguinte forma:

  • $\large \color{orange} R^{2}=0:$ Isso significa que o modelo de regressão não explica nenhuma variabilidade nos dados e não faz previsões melhores do que simplesmente usar a média da variável dependente como previsão.

  • $\large \color{orange} R^{2} = 1:$ Isso indica que o modelo de regressão explica toda a variabilidade na variável dependente, e suas previsões se ajustam perfeitamente aos dados observados.

  • $\large \color{orange} 0 < R^{2} < 1:$ Valores intermediários de $\large R^{2}$ indicam que o modelo explica uma parte da variabilidade nos dados. Quanto mais próximo de 1, maior a proporção da variabilidade explicada pelo modelo.

Fórmula do Coeficiente de Determinação:

$$\large Cd(x,y) = Cr^{2}$$

Sendo:

  • $Cr:$ Coeficiente de Correlação

Exemplos

Utilizando o resultado do Coeficiente de correlação do exemplo acima, 0.9962006267707775, (arredondando o valor, 0.996) vamos calcular o Coeficiente e determinação.

Python

Cr = 0.996

Cd = Cr**2

# Resposta: Cd = 0.992016

Julia

Cr = 0.996

Cd = Cr^2

# Resposta: Cd = 0.992016

Resposta: 99,2% dos valores da variável dependente conseguem ser explicados pelos valores da variável independente.