Data Science - Statistika Korelace vs. kauzalita
Korelace neimplikuje kauzalitu
Korelace měří číselný vztah mezi dvěma proměnnými.
Vysoký korelační koeficient (blízký 1) neznamená, že můžeme s jistotou uzavřít skutečný vztah mezi dvěma proměnnými.
Klasický příklad:
- Během léta se zvyšuje prodej zmrzliny na pláži
- Současně se zvyšuje i počet utonutí
Znamená to, že nárůst prodeje zmrzliny je přímou příčinou zvýšeného počtu utonutí?
Příklad pláže v Pythonu
Zde jsme vytvořili fiktivní datovou sadu, kterou si můžete vyzkoušet:
Příklad
import pandas as pd
import matplotlib.pyplot as plt
Drowning_Accident = [20,40,60,80,100,120,140,160,180,200]
Ice_Cream_Sale =
[20,40,60,80,100,120,140,160,180,200]
Drowning = {"Drowning_Accident":
[20,40,60,80,100,120,140,160,180,200],
"Ice_Cream_Sale":
[20,40,60,80,100,120,140,160,180,200]}
Drowning = pd.DataFrame(data=Drowning)
Drowning.plot(x="Ice_Cream_Sale", y="Drowning_Accident", kind="scatter")
plt.show()
correlation_beach = Drowning.corr()
print(correlation_beach)
Výstup:
Korelace vs kauzalita – příklad pláže
Jinými slovy: můžeme použít prodej zmrzliny k předpovídání nehod utonutí?
Odpověď zní – Pravděpodobně ne.
Je pravděpodobné, že tyto dvě proměnné spolu náhodně korelují.
Co potom způsobuje utonutí?
- Nekvalifikovaní plavci
- Vlny
- Křeč
- Záchvatové poruchy
- Nedostatek dohledu
- (zne)užívání alkoholu
- atd.
Obraťme argument:
Znamená nízký korelační koeficient (blízký nule), že změna x neovlivní y?
Zpět k otázce:
- Můžeme dojít k závěru, že Average_Pulse neovlivňuje Calorie_Burnage kvůli nízkému korelačnímu koeficientu?
Odpověď je ne.
Mezi korelací a kauzalitou je důležitý rozdíl:
- Korelace je číslo, které měří, jak úzce spolu data souvisí
- Kauzalita je závěr, že x způsobuje y.
Je proto důležité kriticky přemýšlet o konceptu kauzality, když děláme předpovědi!