seabornを使ってヒートマップを作成してみます。seabornのheatmapを使います。
githubにもあげてあります。
環境
- python 3.6
- seaborn 0.11.1
seabornをinstallしてない方は
pip install seaborn
でインストールしておいてください
ヒートマップをプロット
ボストンの住宅価格データセットを使って各列の相関に関するヒートマップをプロットしてみます。
まず、データセットのロードします。
from sklearn.datasets import load_boston
dataset = load_boston()
pandas形式にします。
df = pd.DataFrame(dataset.data,columns=dataset.feature_names)
相関を求めておきます。pandasのcorrを使うだけです。
columns = ["CRIM","ZN","INDUS","CHAS"]
corr = df[columns].corr()
#以下出力
CRIM ZN INDUS CHAS
CRIM 1.000000 -0.200469 0.406583 -0.055892
ZN -0.200469 1.000000 -0.533828 -0.042697
INDUS 0.406583 -0.533828 1.000000 0.062938
CHAS -0.055892 -0.042697 0.062938 1.000000
では、この相関をプロットしていきます。
まず、seabornをimportします。
import seaborn as sns
sns.set(style='white', context='notebook', palette='deep')
ヒートマップをプロットします。heatmap関数を使うだけです。
g = sns.heatmap(df[columns].corr(), annot=True, fmt=".2f", cmap="coolwarm"
以上です!