写在最前
数据可视化往往可以帮助我们分析特征构成,寻找特征区间,以及解释实验结果的功能。热力图是常用的数据可视化方法之一。
代码
def plot_heatmap(df, imagSavePath):
"""
:param df: dataframe, which has column names
:param imagSavePath: save the image to this path
:return: no return, save files
"""
matrix = abs(df.corr())
plt.subplots(figsize=(50, 50)) # 设置画面大小
sns.heatmap(matrix)
plt.savefig(imagSavePath)
我们函数输入一个dataframe,然后吧图片写入到制定路径就可以了。一般直接打出来显示的不太清晰,还是保存起来比较好。
值得注意的是,corr()函数原本计算出来的相关矩阵取值范围是(-1,1),-1代表完全负相关,1代表完全正相关,0代表不相关。我认为在机器学习领域,负相关在某种意义上与正相关是一致的。所以不相关才是我们意想中的无意义。所以我给他加上了abs取绝对值