Korelacja

Wprowadzenie do statystyki w Pythonie

Maggie Matsui

Content Developer, DataCamp

Zależności między dwiema zmiennymi

Wykres punktowy nawyków snu ssaków przedstawiający całkowity sen na dobę w stosunku do snu REM na dobę

  • x = zmienna wyjaśniająca/niezależna
  • y = zmienna odpowiedzi/zależna
Wprowadzenie do statystyki w Pythonie

Współczynnik korelacji

  • Kwantyfikuje liniową zależność między dwiema zmiennymi
  • Liczba z przedziału od -1 do 1
  • Wartość bezwzględna odpowiada sile zależności
  • Znak (+ lub -) odpowiada kierunkowi zależności
Wprowadzenie do statystyki w Pythonie

Wartość bezwzględna = siła zależności

0.99 (bardzo silna zależność)

Wykres punktowy z punktami bardzo blisko niewidocznej linii

Wprowadzenie do statystyki w Pythonie

Wartość bezwzględna = siła zależności

0.99 (bardzo silna zależność)

Wykres punktowy z punktami bardzo blisko niewidocznej linii

              0.75 (silna zależność)

Wykres punktowy z punktami dalej od niewidocznej linii

Wprowadzenie do statystyki w Pythonie

Wartość bezwzględna = siła zależności

0.56 (umiarkowana zależność)

Wykres punktowy z punktami jeszcze dalej od niewidocznej linii

Wprowadzenie do statystyki w Pythonie

Wartość bezwzględna = siła zależności

0.56 (umiarkowana zależność)

Wykres punktowy z punktami jeszcze dalej od niewidocznej linii

             0.21 (słaba zależność)

Wykres punktowy z punktami wyglądającymi prawie całkowicie losowo

Wprowadzenie do statystyki w Pythonie

Wartość bezwzględna = siła zależności

0.04 (brak zależności)

Wykres punktowy z punktami wyglądającymi całkowicie losowo

  • Znajomość wartości x nie mówi nic o y
Wprowadzenie do statystyki w Pythonie

Znak = kierunek

0.75:  gdy x rośnie, y rośnie

Wykres punktowy, gdzie y rośnie wraz ze wzrostem x

-0.75:  gdy x rośnie, y maleje

Wykres punktowy, gdzie y maleje wraz ze wzrostem x

Wprowadzenie do statystyki w Pythonie

Wizualizacja zależności

import seaborn as sns

sns.scatterplot(x="sleep_total", y="sleep_rem", data=msleep)
plt.show()

Wykres punktowy sleep_rem w stosunku do sleep_total

Wprowadzenie do statystyki w Pythonie

Dodawanie linii trendu

import seaborn as sns
sns.lmplot(x="sleep_total", y="sleep_rem", data=msleep, ci=None)

plt.show()

Wykres punktowy sleep_rem w stosunku do sleep_total z liniową linią trendu

Wprowadzenie do statystyki w Pythonie

Obliczanie korelacji

msleep['sleep_total'].corr(msleep['sleep_rem'])
0.751755

 

msleep['sleep_rem'].corr(msleep['sleep_total'])
0.751755
Wprowadzenie do statystyki w Pythonie

Wiele sposobów obliczania korelacji

  • Używana w tym kursie: korelacja momentu iloczynu Pearsona   ($r$)
    • Najczęściej stosowana
    • $\bar{x} =$ średnia $x$
    • $\sigma_x =$ odchylenie standardowe $x$

$$ r = \frac{1}{n - 1} \sum_{i=1}^{n} \frac{(x_i - \bar{x})(y_i - \bar{y})}{\sigma_x \cdot \sigma_y}$$

  • Warianty tej formuły:
    • Tau Kendalla
    • Rho Spearmana
Wprowadzenie do statystyki w Pythonie

Czas na ćwiczenia!

Wprowadzenie do statystyki w Pythonie

Preparing Video For Download...