データサイエンス-統計相関と因果関係
相関関係は因果関係を意味しません
相関は、2つの変数間の数値関係を測定します。
高い相関係数(1に近い)は、2つの変数間の実際の関係を確実に結論付けることができるという意味ではありません。
古典的な例:
- 夏の間、ビーチでのアイスクリームの販売が増加します
- 同時に、溺死事故も増加しています
これは、アイスクリームの販売の増加が溺死事故の増加の直接的な原因であることを意味しますか?
Pythonでのビーチの例
ここでは、試してみるための架空のデータセットを作成しました。
例
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)
出力:
相関と因果関係-ビーチの例
言い換えれば、溺死事故を予測するためにアイスクリームの販売を使用できますか?
答えは-おそらくそうではない。
これらの2つの変数が誤って相互に相関している可能性があります。
では、何が溺死の原因になるのでしょうか?
- 未熟なスイマー
- 波
- けいれん
- 発作障害
- 監督の欠如
- アルコール(誤)使用
- 等
議論を逆にしましょう:
低い相関係数(ゼロに近い)は、xの変化がyに影響を与えないことを意味しますか?
質問に戻る:
- 相関係数が低いため、Average_PulseはCalorie_Burnageに影響を与えないと結論付けることができますか?
答えはいいえだ。
相関と因果関係には重要な違いがあります。
- 相関は、データがどの程度密接に関連しているかを測定する数値です。
- 因果関係は、xがyを引き起こすという結論です。
したがって、予測を行うときは、因果関係の概念を批判的に反映することが重要です。