A relação entre as matrizes de correlação e covariância
Anteriormente no curso, você usou .cov()
para obter a matriz de covariância e .corr()
para obter a matriz de correlação. É fácil confundir os dois e usá-los erroneamente nas simulações. Vamos esclarecer!
Uma matriz de correlação é uma matriz de covariância padronizada, em que os coeficientes de correlação na matriz de correlação contêm valores de 0 a 1.
\(cov(x,y) = corr(x,y) \times std(x) \times std(y)\)
A equação acima nos diz que \(cov(x,y)\), the covariance value, can be calculated by multiplying the correlation coefficient \(corr(x,y)\) com desvio padrão de \(x\), \(std(x)\), e o desvio padrão de \(y\), \(std(y)\). Você testará esse relacionamento neste exercício!
O conjunto de dados do diabetes foi carregado como um DataFrame, dia
, e tanto pandas
como pd
e numpy
como np
foram importados para você.
Este exercício faz parte do curso
Simulações de Monte Carlo em Python
Instruções de exercício
- Calcule a matriz de covariância de
dia[["bmi", "tc"]]
, salvando-a comocov_dia2
. - Calcule a matriz de correlação de
dia[["bmi", "tc"]]
, salvando-a comocorr_dia2
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Calculate the covariance matrix of bmi and tc
cov_dia2 = ____
# Calculate the correlation matrix of bmi and tc
corr_dia2 = ____
std_dia2 = dia[["bmi","tc"]].std()
print(f'Covariance of bmi and tc from covariance matrix :{cov_dia2.iloc[0,1]}')
print(f'Covariance of bmi and tc from correlation matrix :{corr_dia2.iloc[0,1] * std_dia2[0] * std_dia2[1]}')