关系(三)利用python绘制相关矩阵图

关系(三)利用python绘制相关矩阵图

相关矩阵图(Correlogram)简介

1

相关矩阵图既可以分析每对变量之间的相关性,也可以分析单变量的分布情况。相关性以散点图的形式可视化,对角线用直方图/密度图表示每个变量的分布。

快速绘制

  1. 基于seaborn

    import seaborn as sns
    import matplotlib.pyplot as plt
    
    # 导入数据
    df = sns.load_dataset('iris')
    
    # 利用pairplot函数绘制相关矩阵图
    sns.pairplot(df)
    
    plt.show()
    

    2

  2. 基于matplotlib

    import matplotlib.pyplot as plt
    
    # 导入数据
    df = sns.load_dataset('iris')
    
    # 定义基本变量
    COLUMNS = ["sepal_length", "sepal_width", "petal_length", "petal_width"]
    COLORS = ["#386cb0", "#fdb462", "#7fc97f"]
    SPECIES = ["setosa", "versicolor", "virginica"]
    
    # 初始化布局4*4
    fig, axes = plt.subplots(4, 4, figsize = (12, 8), sharex="col", tight_layout=True)
    
    for i in range(len(COLUMNS)):
        for j in range(len(COLUMNS)):
            # 下三角添加散点图
            if i > j:
                for species, color in zip(SPECIES, COLORS):
                    data = df[df["species"] == species]
                    axes[i, j].scatter(COLUMNS[j], COLUMNS[i], color=color, alpha=0.5, data=data)
                    
            # 对角线添加直方图
            if i == j:
                for species, color in zip(SPECIES, COLORS):
                    data = df[df["species"] == species]
                    axes[i, j].hist(COLUMNS[j], bins=15, alpha=0.5, data=data)
            
            # 上三角剔除边框
            if i < j:
                axes[i, j].remove()
                
    plt.show()
    

    3

定制多样化的相关矩阵图

自定义相关矩阵图一般是结合使用场景对相关参数进行修改,并辅以其他的绘图知识。参数信息可以通过官网进行查看,其他的绘图知识则更多来源于实战经验,大家不妨将接下来的绘图作为一种学习经验,以便于日后总结。

seaborn主要利用pairplot绘制相关矩阵图,可以通过seaborn.pairplot了解更多用法

import seaborn as sns
import matplotlib.pyplot as plt

# 导入数据
df = sns.load_dataset('iris')

# 自定义参数
sns.pairplot(df, kind="scatter",  # 散点图,不带拟合线
                 hue="species",   # 对species进行分组(不同颜色)
                 plot_kws=dict(s=80, edgecolor="white", linewidth=2.5) # 自定义绘制参数
        )
plt.show()

4

也可以利用PairGrid自定义更为灵活的相关矩阵图,可以通过seaborn.pairplot了解更多用法

import seaborn as sns
import matplotlib.pyplot as plt

# 导入数据
df = sns.load_dataset('iris')

g = sns.PairGrid(df, diag_sharey=False)
# 上三角散点图
g.map_upper(sns.scatterplot)
# 下三角密度图
g.map_lower(sns.kdeplot)
# 对角线密度图
g.map_diag(sns.kdeplot)

plt.show()

5

总结

以上通过seaborn的pairplot快速绘制相关矩阵图,也可以利用matplotlib自定义绘制相关矩阵图。并通过修改参数或者辅以其他绘图知识自定义各种各样的相关矩阵图来适应相关使用场景。

共勉~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/526290.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

面试字节被挂了

分享一个面试字节的经历。 1、面试过程 一面&#xff1a;上来就直接"做个题吧"&#xff0c;做完之后&#xff0c;对着简历上一个项目聊&#xff0c;一直聊到最后&#xff0c;还算比较正常。 二面&#xff1a;做自我介绍&#xff0c;花几分钟聊了一个项目&#xff…

Notepad++软件安装及配置说明

Notepad是 Windows操作系统下的一套文本编辑器&#xff0c;有完整的中文化接口及支持多国语言编写的功能。 Notepad功能比 Windows自带记事本强大&#xff0c;除了可以用来制作一般的纯文字说明文件&#xff0c;也十分适合编写计算机程序代码。Notepad不但可以显示行号&#xf…

精酿啤酒的未来:创新与传统的碰撞

随着精酿啤酒的兴起&#xff0c;越来越多的人开始关注这一领域的发展趋势。精酿啤酒作为啤酒中的一种新兴类别&#xff0c;其未来发展将受到创新与传统的碰撞和影响。在这其中&#xff0c;Fendi Club啤酒屋作为精酿啤酒的代表性场所&#xff0c;将继续发挥其重要的作用。 首先&…

windows10系统下TP-LINK万兆网卡属性配置高级说明

文章目录 打开配置属性说明ARP Offload&#xff1a;ARP地址解析协议卸载Downshift retries:降档重试次数Energy-Efficient Ethernet:高能效以太网Flow Control:流量控制Interrupt Moderation:中断调整Interrupt Moderation Rate:中断调节率IPv4 Checksum Offload:IPv4校验和卸载…

好看的短袖品牌有哪些?不会穿搭的男生有这几件短袖就够了

很多朋友都经常跟我说&#xff0c;自己买回来的衣服要么就是太长要么就是太短&#xff0c;甚至还有一些质量很差的衣服。而主要的原因就是目前市面上有太多未经过细节优化的衣裤&#xff0c;同时鱼龙混杂的市场也让大家十分容易选择到这类衣服。 而最近天气也逐渐转热&#xf…

java算法day46 | 动态规划part08 ● 139.单词拆分 ● 关于多重背包,你该了解这些! ● 背包问题总结篇!

139.单词拆分 完全背包问题&#xff0c;只不过装入背包时需要附加一个判断条件。 class Solution {public boolean wordBreak(String s, List<String> wordDict) {boolean[] dpnew boolean[s.length()1];dp[0]true;for(int j1;j<s.length();j){for(int i0;i<wordD…

【深度学习】最强算法之:深度Q网络(DQN)

深度Q网络 1、引言2、深度Q网络2.1 定义2.2 原理2.3 实现方式2.4 算法公式2.5 代码示例 3、总结 1、引言 小屌丝&#xff1a;鱼哥&#xff0c; 马上清明小长假了&#xff0c; 你这准备去哪里玩啊&#xff1f; 小鱼&#xff1a;哪也不去&#xff0c;在家待着 小屌丝&#xff1a…

Java 开发篇+一个简单的数据库管理系统ZDB

说明&#xff1a;本文供数据库爱好者和初级开发人员学习使用 标签&#xff1a;数据库管理系统、RDBMS、Java小程序、Java、Java程序 系统&#xff1a;Windows 11 x86 CPU &#xff1a;Intel IDE &#xff1a;IntelliJ IDEA Community Edition 2024 语言&#xff1a;Java语言 标…

“AI+信创”两翼齐飞,实在智能全面加速自主可控实在智能RPA

近日&#xff0c;实在智能牵手华为昇腾、摩尔线程在信创领域展开紧密合作&#xff0c;共同加速推进AI和信创产业创新发展。 华为昇腾与实在智能达成昇腾原生大模型联合创新合作&#xff0c;基于华为昇腾AI自主创新软硬件平台全栈技术、实在智能自研RPA基础大模型解决方案能力&a…

简单好用高效的视频补帧软件:Squirrel-RIFE

Squirrel-RIFE&#xff0c;轻松实现高效补帧&#xff0c;让您的视频画面瞬间流畅升级&#xff01;- 精选真开源&#xff0c;释放新价值。 概览 在观看视频内容的过程中&#xff0c;尤其是面对复杂多变的动画场景或高速运动镜头时&#xff0c;观众时常会遭遇视频帧率不足所引发…

算法中的二阶差分

众所周知&#xff0c;在往区间的每一个数都加上一个相同的数k&#xff0c;进行n次后会得到一个新的数列&#xff0c;如果每次加都循环区间挨个数加上k&#xff0c;这样时间复杂度无疑是O(n^2)&#xff0c;很高。这时可以采用一阶差分就可解决&#xff0c;这里默认会一阶差分&am…

物联网行业趋势——青创智通

工业物联网解决方案-工业IOT-青创智通 随着科技的不断进步和应用场景的日益扩大&#xff0c;物联网行业呈现出迅猛发展的势头。作为当今世界最具前瞻性和战略意义的领域之一&#xff0c;物联网行业的趋势和未来发展值得深入探讨。 ​一、物联网行业正逐渐实现全面普及。随着物…

鸿蒙ArkUI开发实战:制作一个【简单计数器】

构建第一个页面 使用文本组件 工程同步完成后&#xff0c;在 Project 窗口&#xff0c;点击 entry > src > main > ets > pages &#xff0c;打开 Index.ets 文件&#xff0c;可以看到页面由 Row 、 Column 、 Text 组件组成。 index.ets 文件的示例如下&#xff1…

飞机降落(区间问题)

思路&#xff1a; 受P1803 凌乱的yyy / 线段覆盖的启发。 对于这道题&#xff0c;我的第一想法不是dfs&#xff0c;而是把它看作区间来看&#xff0c;分别就是【t&#xff0c;tl】和【td&#xff0c;tdl】。先按照结束时间排序&#xff0c;先用第一个飞机不延迟降落的时间a[0…

制造业智能化一体式I/O模块的集成与应用案例分享

在现代制造业中&#xff0c;智能化一体式I/O模块的应用已经成为提升生产效率、优化工艺流程的关键技术之一。这种一体化I/O模块的主要功能在于作为PLC&#xff08;可编程逻辑控制器&#xff09;系统的扩展接口&#xff0c;以满足多样化的输入输出需求。本文将通过一个实际案例&…

DFS-0与异或问题,有奖问答,飞机降落

代码和解析 #include<bits/stdc.h> using namespace std; int a[5][5]{{1,0,1,0,1}}; //记录图中圆圈内的值&#xff0c;并初始化第1行 int gate[11]; //记录10个逻辑门的一种排列 int ans; //答案 int logic(int x, int y, int op){…

麒麟系统下安装qt5.9.1后不能输入中文

引言 在虚拟机上安装麒麟系统后,安装了qt5.9.1,只能输入英文和数字不能输入中文注释,编译的程序也不能输入中文。 原因 安装后的麒麟系统自带搜狗输入法,原本可以输入中文,但是qt5.9.1缺少支持搜狗输入法的fcitx插件。所以qt5.9.1中不能输入中文。 解决方法 安装fcit…

逆向入门:为CTF国赛而战day03

今天来做几道题目。 环境准备&#xff1a;ida ,Exeinfo,万能脱壳器&#xff08;后面有写资源&#xff09; 强推&#xff0c;亲测有效CTF小工具下载整理_ctf工具御剑下载-CSDN博客 [网站BUUCTF] 目录 题目一 题目二三 题目4&#xff1a;新年快乐 题目一 easyre题解_easyr…

在自定义数据集上微调 YOLOv9 模型

在自定义数据集上微调 YOLOv9模型可以显着提高目标检测性能,但这种改进有多显着呢?在这次全面的探索中,YOLOv9在SkyFusion数据集上进行了微调,分为三个不同的类别:飞机、船舶和车辆。通过一系列广泛的实验,包括修改学习率、图像大小和战略性冻结主干网,已经实现了令人印…

目标检测——RCNN系列学习(一)

前置知识 包括&#xff1a;非极大值抑制&#xff08;NMS&#xff09;、selective search等 RCNN [1311.2524] Rich feature hierarchies for accurate object detection and semantic segmentation (arxiv.org)https://arxiv.org/abs/1311.2524 1.网络训练 2.推理流程 3.总…