我们在建模的时候为了避免多重共线性一般都会分析变量之间的相关性。衡量变量相关性我们一般都是计算变量两两之间的皮尔逊相关系数( Pearson correlation coefficient)。为了能够更好的展现变量之间的相关性,下面为大家介绍如何利用热力图来表示变量之间的相关性。
def corr_map(df):
var_corr = df.corr()
mask = np.zeros_like(var_corr, dtype=np.bool)
mask[np.triu_indices_from(mask)] = True
cmap = sns.diverging_palette(220, 10, as_cmap=True)
f, ax = plt.subplots(figsize=(20, 12))
sns.set(font_scale=1)
sns.heatmap(var_corr, mask=mask, cmap=cmap, vmax=1, center=0
,square=True, linewidths=.5, cbar_kws={"shrink": .5}
,annot=True,annot_kws={'size':12,'weight':'bold', 'color':'red'})
plt.show()
效果如下: