データサイエンス-統計相関行列
相関行列
行列は、行と列に配置された数値の配列です。
相関行列は、変数間の相関係数を示す単なる表です。
ここで、変数は最初の行と最初の列に表されています。
上記の表は、完全な健康データセットのデータを使用しています。
観察:
- 期間とCalorie_Burnageは密接に関連しており、相関係数は0.89であることがわかります。これは、トレーニングが長ければ長いほど、より多くのカロリーを消費するので理にかなっています。
- Average_PulseとCalorie_Burnageの間に線形関係がほとんどないことがわかります(相関係数0.02)
- Average_PulseはCalorie_Burnageに影響を与えないと結論付けることができますか?いいえ。後でこの質問に答えるために戻ってきます。
Pythonの相関行列
Pythonの関数を使用corr()
して、相関行列を作成できます。また、この関数を使用してround()
、出力を小数点以下2桁に丸めます。
例
Corr_Matrix = round(full_health_data.corr(),2)
print(Corr_Matrix)
出力:
ヒートマップの使用
ヒートマップを使用して、変数間の相関関係を視覚化できます。
相関係数が1に近いほど、正方形は緑になります。
相関係数が-1に近いほど、正方形は茶色になります。
Seabornを使用してヒートマップを作成する
Seabornライブラリを使用して相関ヒートマップを作成できます(Seabornはmatplotlibに基づく視覚化ライブラリです)。
例
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()
説明された例:
- ライブラリseabornをsnsとしてインポートします。
- full_health_dataセットを使用します。
- sns.heatmap()を使用して、ヒートマップで相関行列を視覚化する必要があることをPythonに通知します。
- 相関行列を使用します。ヒートマップの最大値と最小値を定義します。0が中心であることを定義します。
- sns.diverging_paletteで色を定義します。n = 500は、同じカラーパレットに500種類の色が必要であることを意味します。
- square = Trueは、正方形を見たいことを意味します。