Sambandet mellan korrelations- och kovariansmatriser
Tidigare i kursen använde du .cov() för att beräkna kovariansmatrisen och .corr() för att beräkna korrelationsmatrisen. Det är lätt att blanda ihop dem och använda fel metod i simuleringar. Låt oss reda ut skillnaden!
En korrelationsmatris är en standardiserad kovariansmatris, där korrelationskoefficienterna har värden mellan 0 och 1.
\(cov(x,y) = corr(x,y) \times std(x) \times std(y)\)
Ekvationen ovan visar att \(cov(x,y)\), kovariansen, kan beräknas genom att multiplicera korrelationskoefficienten \(corr(x,y)\) med standardavvikelsen för \(x\), \(std(x)\), och standardavvikelsen för \(y\), \(std(y)\). I den här övningen får du testa det sambandet!
Diabetesdatamängden har laddats in som en DataFrame, dia, och både pandas som pd och numpy som np har importerats åt dig.
Den här övningen är en del av kursen
Monte Carlo-simuleringar i Python
Övningsinstruktioner
- Beräkna kovariansmatrisen för
dia[["bmi", "tc"]]och spara den somcov_dia2. - Beräkna korrelationsmatrisen för
dia[["bmi", "tc"]]och spara den somcorr_dia2.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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]}')