Relația dintre matricele de corelație și de covarianță
Anterior în curs, ai folosit .cov() pentru a obține matricea de covarianță și .corr() pentru a obține matricea de corelație. Este ușor să le confunzi și să le folosești greșit în simulări. Să clarificăm!
O matrice de corelație este o matrice de covarianță standardizată, în care coeficienții de corelație au valori cuprinse între 0 și 1.
\(cov(x,y) = corr(x,y) \times std(x) \times std(y)\)
Ecuația de mai sus ne arată că \(cov(x,y)\), valoarea covarianței, poate fi calculată înmulțind coeficientul de corelație \(corr(x,y)\) cu abaterea standard a lui \(x\), \(std(x)\), și abaterea standard a lui \(y\), \(std(y)\). Vei testa această relație în exercițiul de față!
Setul de date despre diabet a fost încărcat ca DataFrame, dia, iar pandas ca pd și numpy ca np au fost deja importate.
Acest exercițiu face parte din cursul
Simulări Monte Carlo în Python
Instrucțiuni pentru exercițiu
- Calculează matricea de covarianță a
dia[["bmi", "tc"]]și salveaz-o cacov_dia2. - Calculează matricea de corelație a
dia[["bmi", "tc"]]și salveaz-o cacorr_dia2.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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]}')