Jak utworzyć macierz korelacji w pythonie


Jednym ze sposobów ilościowego określenia związku między dwiema zmiennymi jest użycie współczynnika korelacji Pearsona , który jest miarą liniowego związku między dwiema zmiennymi .

Przyjmuje wartość z zakresu od -1 do 1, gdzie:

  • -1 oznacza doskonale ujemną korelację liniową.
  • Wartość 0 oznacza brak korelacji liniowej.
  • 1 wskazuje doskonale dodatnią korelację liniową.

Im współczynnik korelacji jest bardziej od zera, tym silniejszy jest związek między obiema zmiennymi.

Jednak w niektórych przypadkach chcemy zrozumieć korelację między wieloma parami zmiennych. W takich przypadkach możemy utworzyć macierz korelacji , która jest kwadratową tabelą pokazującą współczynniki korelacji pomiędzy kilkoma parami kombinacji zmiennych.

W tym samouczku wyjaśniono, jak utworzyć i zinterpretować macierz korelacji w języku Python.

Jak utworzyć macierz korelacji w Pythonie

Wykonaj poniższe kroki, aby utworzyć macierz korelacji w języku Python.

Krok 1: Utwórz zbiór danych.

 import pandas as pd

data = {'assists': [4, 5, 5, 6, 7, 8, 8, 10],
        'rebounds': [12, 14, 13, 7, 8, 8, 9, 13],
        'points': [22, 24, 26, 26, 29, 32, 20, 14]
        }

df = pd. DataFrame (data, columns=['assists','rebounds','points'])
df

   assist rebound points
0 4 12 22
1 5 14 24
2 5 13 26
3 6 7 26
4 7 8 29
5 8 8 32
6 8 9 20
7 10 13 14

Krok 2: Utwórz macierz korelacji.

 #create correlation matrix
df. corr ()

                assists rebound points
assists 1.000000 -0.244861 -0.329573
rebounds -0.244861 1.000000 -0.522092
points -0.329573 -0.522092 1.000000

#create same correlation matrix with coefficients rounded to 3 decimals 
df. corr (). round (3)
	       assists rebound points
assists 1.000 -0.245 -0.330
rebounds -0.245 1.000 -0.522
points -0.330 -0.522 1.000

Krok 3: Zinterpretuj macierz korelacji.

Wszystkie współczynniki korelacji wzdłuż przekątnej tabeli są równe 1, ponieważ każda zmienna jest doskonale skorelowana ze sobą.

Wszystkie pozostałe współczynniki korelacji wskazują na korelację pomiędzy różnymi kombinacjami zmiennych parami. Na przykład:

  • Współczynnik korelacji pomiędzy asystami i zbiórkami wynosi -0,245 .
  • Współczynnik korelacji pomiędzy asystami i punktami wynosi -0,330 .
  • Współczynnik korelacji pomiędzy zbiórkami i punktami wynosi -0,522 .

Krok 4: Wizualizuj macierz korelacji (opcjonalnie).

Możesz wizualizować macierz korelacji, korzystając z opcji stylizacji dostępnych w pandach:

 corr = df. corr ()
corr. style . background_gradient (cmap='coolwarm')

Macierz korelacji w Pythonie

Można także zmodyfikować argument cmap , aby utworzyć macierz korelacji o różnych kolorach.

 corr = df. corr ()
corr. style . background_gradient (cmap=' RdYlGn ') 

Macierz korelacji z matplotlib w Pythonie

 corr = df. corr ()
corr. style . background_gradient (cmap=' bwr ') 

Macierz korelacji przy użyciu Pand

 corr = df. corr ()
corr. style . background_gradient (cmap=' PuOr ') 

Przykład macierzy korelacji w Pythonie

Uwaga : Pełną listę argumentów cmap znajdziesz w dokumentacji matplotlib .

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *