项目场景:
对于每个数值列,我们使用 seaborn 库并尝试执行配对绘图来检查其数据分布。
sns.pairplot(train_data[numeric_cols])
plt.show()
问题描述
Seaborn的配对图在对角线上的图和预想结果不一样
预想:
结果:
可以观察到,只有对角线上的图存在差异
原因分析:
找了很多资料,最终得出两种可能的原因
- Seaborn的版本原因
- pairplot方法不够灵活
解决方案:
1.卸载原先安装的Seaborn库,安装Seaborn库的0.11.0版本(修改版本之后记得重启jupyter)
2.使用PairGrid函数
g = sns.PairGrid(train_data[numeric_cols],diag_sharey=False)
g.map_diag(sns.histplot)
g.map_offdiag(sns.scatterplot)