IniziaInizia gratis

Il rapporto tra matrici di correlazione e di covarianza

In precedenza nel corso, hai usato .cov() per ottenere la matrice di covarianza e .corr() per ottenere la matrice di correlazione. È facile confonderle e usarle in modo errato nelle simulazioni. Facciamo chiarezza!

Una matrice di correlazione è una matrice di covarianza standardizzata, in cui i coefficienti di correlazione nella matrice assumono valori da 0 a 1.

\(cov(x,y) = corr(x,y) \times std(x) \times std(y)\)

L'equazione sopra ci dice che \(cov(x,y)\), il valore di covarianza, può essere calcolato moltiplicando il coefficiente di correlazione \(corr(x,y)\) per la deviazione standard di \(x\), \(std(x)\), e per la deviazione standard di \(y\), \(std(y)\). Metterai alla prova questa relazione in questo esercizio!

Il dataset sul diabete è stato caricato come DataFrame, dia, e sia pandas come pd sia numpy come np sono stati importati per te.

Questo esercizio fa parte del corso

Simulazioni Monte Carlo in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Calcola la matrice di covarianza di dia[["bmi", "tc"]], salvandola come cov_dia2.
  • Calcola la matrice di correlazione di dia[["bmi", "tc"]], salvandola come corr_dia2.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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]}')
Modifica ed esegui il codice