跟着高分SCI学画图:GPT教你绘制相关性热图
每当我们拿到一组新数据并需要选择特点对模型进行训练的时候,计算不同特征之间的特征相关性就成了必不可少的一步。通常情况下我们会用相关性矩阵来直观的展现各个特征间的相关性,但是矩阵终究是矩阵,数字矩阵并不能很直观的体现不同特点间的相关性强弱关系。而分块热图就能完美的展现特征相关性间的强弱关系。
分块热图,出列!
分块热图(Block Heatmap)是一种二维数据可视化工具,用于显示数据矩阵,其中每个单元格的颜色表示该单元格的值。
分块热图的特点
直观:通过颜色深浅变化直接显示数据的分布和模式。 高效:适用于展示大量数据,能够在一个图中显示大量信息。 灵活:可以结合注释(如数值显示)提供更详细的信息。 颜色映射:通过不同的颜色映射方案(如冷暖色、彩虹色)增强数据的可读性和对比度。 多维度显示:可以同时显示多个变量(如基因表达数据中的基因和样本)。
分块热图的优点
数据模式识别:分块热图能清晰显示数据中的模式、趋势和异常值,便于识别相关性和聚类。 对比性强:通过颜色的直观变化,可以快速对比不同变量或样本之间的差异。 可扩展性强:适用于不同规模的数据集,从小型数据到大型数据集均能有效展示。 综合信息展示:能够同时显示数据的多个维度,提供全面的信息。
分块热图的缺点
依赖颜色映射:不同颜色映射方案可能导致对数据的解读不一致,需要慎重选择。 数据预处理要求高:需要对数据进行标准化或归一化处理,否则不同尺度的数据难以比较。 信息过载:对于过于复杂或大型的数据集,可能导致信息过载,难以解读具体细节。 色盲问题:对色盲人士不友好,可能需要使用色盲友好的颜色方案。
画图咯!
数据介绍
我们使用的数据来自于Kaggle,这组数据包含了超过200份受访者的生活习惯与他们是否患有中风。https://www.kaggle.com/datasets/zzettrkalpakbal/full-filled-brain-stroke-dataset
导入环境
import pandas as pd
import pydot
from IPython.display import Image, display
from sklearn.tree import export_graphviz
import numpy as np
读入数据
file_path = '/content/full_filled_stroke_data (1).csv'
df = pd.read_csv(file_path)
计算相关性矩阵
# 用pandas计算相关性矩阵
correlation_matrix = df.corr(numeric_only=True) # Specify numeric_only=True to avoid FutureWarning
绘图
# 使用matplotlib绘制相关性矩阵热图
plt.figure(figsize=(10, 8))
# 设置图表大小
sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm', linewidths=0.5)
# seaborn 库绘制热图。具体参数说明如下:
# correlation_matrix: 要绘制的相关矩阵数据。
# annot=True: 在每个单元格上显示数据值。
# cmap='coolwarm': 使用 'coolwarm' 颜色映射。
# linewidths=0.5: 设置单元格之间的线宽为 0.5。
plt.title('Correlation Matrix Heatmap')
# 设置图表名称
plt.show()
# 显示图表
本文作者:徐可
现在:
长按扫码关注:科研生信充电宝
10元赞赏本文,即喜欢作者~
即可直接解锁:
《跟着高分SCI学画图:GPT教你绘制相关性热图》对应资源哦~
看到这里你还不心动吗?
赶紧关注、转发、点赞、分享,领取你的专属福利吧~
好啦,以上就是今天推文的全部内容啦!
版权声明:本文内容由互联网用户自发贡献,版权归作者所有,本公众号不拥有所有权,也不承担相关法律责任。
如果您发现本公众号中有涉嫌抄袭的内容,欢迎发送邮件至:kysxcdb@163.com 进行举报,一经查实,本公众号将立刻删除涉嫌侵权内容。