Der Zusammenhang zwischen Korrelations- und Kovarianzmatrizen
Früher im Kurs hast du .cov() verwendet, um die Kovarianzmatrix zu erhalten, und .corr(), um die Korrelationsmatrix zu erhalten. Die beiden werden leicht miteinander verwechselt und dann in Simulationen falsch genutzt. Klären wir das!
Eine Korrelationsmatrix ist eine standardisierte Kovarianzmatrix, wobei die Korrelationskoeffizienten in der Korrelationsmatrix Werte zwischen 0 und 1 enthalten.
\(cov(x,y) = corr(x,y) \times std(x) \times std(y)\)
Die obige Gleichung sagt uns, dass \(cov(x,y)\), der Kovarianzwert, berechnet werden kann, indem man den Korrelationskoeffizienten \(corr(x,y)\) mit der Standardabweichung von \(x\), \(std(x)\), und der Standardabweichung von \(y\), \(std(y)\), multipliziert. Diese Beziehung testest du in dieser Übung!
Der Diabetes-Datensatz wurde als DataFrame dia geladen, und sowohl pandas als pd als auch numpy als np wurden für dich importiert.
Diese Übung ist Teil des Kurses
Monte-Carlo-Simulationen in Python
Anleitung zur Übung
- Berechne die Kovarianzmatrix von
dia[["bmi", "tc"]]und speichere sie alscov_dia2. - Berechne die Korrelationsmatrix von
dia[["bmi", "tc"]]und speichere sie alscorr_dia2.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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]}')