Data Science - Statistics Correlation Matrix


Korelační matice

Matice je pole čísel uspořádaných do řádků a sloupců.

Korelační matice je jednoduše tabulka ukazující korelační koeficienty mezi proměnnými.

Zde jsou proměnné uvedeny v prvním řádku a v prvním sloupci:

Korelační matice

Výše uvedená tabulka používá data z úplného souboru zdravotních dat.

Pozorování:

  • Pozorujeme, že Duration a Calorie_Burnage spolu úzce souvisí, s korelačním koeficientem 0,89. To dává smysl, protože čím déle trénujeme, tím více kalorií spálíme
  • Pozorujeme, že neexistuje téměř žádný lineární vztah mezi Average_Pulse a Calorie_Burnage (korelační koeficient 0,02)
  • Můžeme dojít k závěru, že Average_Pulse neovlivňuje Calorie_Burnage? Ne. K odpovědi na tuto otázku se vrátíme později!

Korelační matice v Pythonu

corr()K vytvoření korelační matice můžeme použít funkci v Pythonu. Funkci také používáme round()k zaokrouhlení výstupu na dvě desetinná místa:

Příklad

Corr_Matrix = round(full_health_data.corr(),2)
print(Corr_Matrix)

Výstup:

Korelační matice

Použití teplotní mapy

K vizualizaci korelace mezi proměnnými můžeme použít teplotní mapu:

Korelační teplotní mapa

Čím blíže je korelační koeficient 1, tím jsou čtverce zelenější.

Čím blíže je korelační koeficient -1, tím jsou čtverce hnědší.


Použijte Seaborn k vytvoření teplotní mapy

Knihovnu Seaborn můžeme použít k vytvoření korelační tepelné mapy (Seaborn je vizualizační knihovna založená na matplotlib):

Příklad

import matplotlib.pyplot as plt
import seaborn as sns

correlation_full_health = full_health_data.corr()

axis_corr = sns.heatmap(
correlation_full_health,
vmin=-1, vmax=1, center=0,
cmap=sns.diverging_palette(50, 500, n=500),
square=True
)

plt.show()

Vysvětlený příklad:

  • Importujte knihovnu seaborn jako sns.
  • Použijte sadu full_health_data.
  • Pomocí sns.heatmap() sdělte Pythonu, že chceme teplotní mapu pro vizualizaci korelační matice.
  • Použijte korelační matici. Definujte maximální a minimální hodnoty teplotní mapy. Definujte, že 0 je střed.
  • Definujte barvy pomocí sns.diverging_palette. n=500 znamená, že chceme 500 typů barev ve stejné paletě barev.
  • square = True znamená, že chceme vidět čtverce.