数据探索与可视化:可视化分析数据关系-中

目录

一、前言

二、介绍

Ⅰ.一个分类变量和一个连续变量

Ⅱ.两个分类变量的一个连续变量

Ⅲ.两个分类变量和两个连续变量

Ⅳ.一个分类变量和多个连续变量

①.平行坐标轴

②.矩阵散点图

三、结语


一、前言

在做数据分析的时候,很少会遇到连续变量和分类变量,更多的是需要我们对同时包含连续变量和分类变量进行可视化分析。所以我们在在本篇当中要开始来学习如何处理同时包含连续变量和分类变量进行可视化分析的问题。

二、介绍

Ⅰ.一个分类变量和一个连续变量

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import altair as alt
Iris=pd.read_csv(r'C:\Users\asuspc\Desktop\program\data\chap2\Iris.csv')
Irislong=Iris.melt(['Id','Species'],var_name='measurement_type',value_name='value')

开始之前还是老样子,先导包和获取数据,得到之后,我们将数据变成长型数据用到melt方法,Id和Species变量与其他数据的变化无关所以我们不将这两个数据进行融合。

我们就能得出如上的数据,那么接下来就是开始使用可视化,我们可以使用箱线图,分析在不同分类变量下,连续变量的分布情况。

plt.figure(figsize=(10,6))
sns.boxplot(data=Irislong,x='Species',y='value')
plt.title('Box')
plt.show()

这里对X轴和Y轴的变量名称注释清楚,然后将处理好的数据Irislong放入。

从图中我们可以发现,三者的极差(上下四分位数的距离)趋于一致,但是数据的集中位置在依次升高,箱线图在这的确利于我们取理解数据构成的趋势。 

Ⅱ.两个分类变量的一个连续变量

plt.figure(figsize=(10,6))
sns.boxplot(data=Irislong,x='Measurement_type',y='value',hue='Species')
plt.title('The Box of Divided-group')
plt.show()

到了两个分类变量的一个连续变量时,我们依然使用箱线图,与一个分类变量和一个连续变量来说,我们更加需要分组的箱线图进行可视化。

这里的参数中hue视为分类变量,将数据分位不同组。

 

这样我们就能在不同种类中分析同一个数据项的关系,也能让我们一目了然看出一定的趋势。 

Ⅲ.两个分类变量和两个连续变量

 如果想要可视化两个分类变量和两个连续变量之间的关系,那我们需要分面散点图。

Titanic=pd.read_csv(r"C:\Users\asuspc\Desktop\program\data\chap2\Titanic数据.csv")
fig=sns.FacetGrid(data=Titanic,row='Survived',col='Sex',margin_title=True,height=3,aspect=1.4)
fig.map(sns.scatterplot,'Age','Fare')
plt.show()

先分面散点图,其中两个分类变量将可视化切为网格,如何在对应的网格下可视化出两个连续变量的散点图,从而帮助我们 能够对数据进行分析。

 

从中我们可以对比不同性别在不同年龄的不同票价中的存活顾客,可以看出,不同年龄层的女性存活总数相对于男性较少,并且买低票价的男性存活高于买低票价的女性

 

而这张是改变survived为embarked,我们可以看到不同登港的人数和性别对于。

S是Southampton南安普顿,C是Cherbourg法国瑟堡,Q是Queenstown爱尔兰昆士敦。

Ⅳ.一个分类变量和多个连续变量

①.平行坐标轴

plt.figure(figsize=(10,6))
parallel_coordinates(Iris.iloc[:,1:6],"Species",alpha=0.8)
plt.title('Parallel_Coordinates')
plt.show()

这里需要的导包是from pandas.plotting import parallel_coordinates, 用iloc的方法定位取值,而class_column:str 包含类名的列名。(即按类别划分),我们这里只是将将class_column省略,直接填‘Species’。

其中每一个变量都是横轴中的一个坐标点,值的大小标记在对应的竖直线上,用颜色为分组变量中的每条平行线进行分组。我们清晰的看出第三个连续变量在不同类别的差异是最大的,最小的是第一个连续变量。

②.矩阵散点图

 

sns.pairplot(Iris.iloc[:,1:6],hue='Species',height=2,aspect=1.2,diag_kind='kde',markers=['o','s','D'])
plt.show()

 我们用三种不同的颜色来描述不同种类在这一连续变量的密集程度,hue参数如上为分类分组,iloc是数据的切片操作。

这样我们就可以更加具体分析在不同分类变量里的连续变量的关系,有助于我们对不同分类变量对比不同连续变量的数据特征。

三、结语

这些数据描述的通常是表格数据,那么对于其他类型的数据也有特定的数据可视化的方法,下一篇我们将对其进行相关介绍。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch如何支持 GPU 加速计算

在 PyTorch 中,torch.Tensor 是核心的数据结构,它与 NumPy 的 ndarray 类似,用于存储和操作多维数据。但与 NumPy 不同的是,PyTorch 的 Tensor 除了能在 CPU 上运行之外,还能够无缝地利用 GPU 进行计算加速。 GPU 加速…

读千脑智能笔记01_新皮质

作者简介 1988年至1992年,创造了平板电脑GridPad,它属于第一批平板电脑 1992年,成立了Palm公司,之后在长达10年的时间内,设计了一些最早的掌上电脑和智能手机,如PalmPilot和Treo 在2002年创立了红木神经科学…

《HTML 简易速速上手小册》第9章:HTML5 新特性(2024 最新版)

文章目录 9.1 HTML5 新增标签和属性9.1.1 基础知识9.1.2 案例 1:创建一个结构化的博客页面9.1.3 案例 2:使用新的表单元素创建事件注册表单9.1.4 案例 3:创建一个具有高级搜索功能的搜索表单 9.2 HTML5 表单增强9.2.1 基础知识9.2.2 案例 1&a…

VScode注释快捷键,RStudio注释快捷键, Texmaker注释快捷键

VScode:一款界面简单的代码编辑器;RStudio: R语言的IDE,包含代码编辑器,运行,绘图窗口等;Texmaker:Latex编译器(编辑编译),界面简单,个人认为比Te…

揭秘远程控制APP的便捷之美!

在这个科技日新月异的时代,我们的生活被各种手机软件所包围。几乎每个人都有一个甚至多个手机,你是否也有遇到过需要远程操作自己某一台手机的场景呢?今天,我要向大家推荐一款神奇的手机远程操作神器,让你可以随时随地…

Kore.ai获10亿元融资,提供定制化类ChatGPT助手

1月31日,生成式AI和企业对话平台Kore.ai在官网宣布,获得1.5 亿美元(约10.7亿元)融资。本次由FTV Capital 领投,英伟达等跟投。 Kore.ai主要提供银行、医疗、零售、营销、人力资源等多种领域的,定制化类Cha…

【动态规划】【C++算法】1340. 跳跃游戏 V

作者推荐 【动态规划】【字符串】【表达式】2019. 解出数学表达式的学生分数 本文涉及知识点 动态规划汇总 LeetCode1340跳跃游戏 V 给你一个整数数组 arr 和一个整数 d 。每一步你可以从下标 i 跳到&#xff1a; i x &#xff0c;其中 i x < arr.length 且 0 < x…

zsh: command not found: mysql (mac通过安装MySQL后终端cmd找不到mysql命令)

考虑是mysql环境变量没有配置的问题 1.查找mysql安装路径 ps -ef|grep mysql 2.先启动上安装的mysql 3. 查看 .bash_profile 文件 ls -al 查看是否有(.bash_profile)文件 如果没有就输入以下命令创建一个&#xff0c;再查看 touch .bash_profile 4.打开 .bash_profile 文件 …

kubekey网页版安装k8s集群操作流程

kubekey可以一键拉起k8s集群并完成kubesphere的部署&#xff0c;以后kubekey简称kk。kk 3.2版本以前都是在宿主机上完成对应的创建集群、添加节点、升级等操作的&#xff0c;3.2版本后开始往页面操作的方向演进&#xff0c;kk 3.2版本现在还是alpha&#xff0c;所以不推荐在生产…

SpringBoot使用Rabbit详解含完整代码

1. 摘要 本文将详细介绍如何在Spring Boot应用程序中集成和使用RabbitMQ消息队列。RabbitMQ是一个开源的消息代理和队列服务器&#xff0c;用于通过轻量级和可靠的消息在应用程序或系统之间进行异步通信。本文将通过步骤说明、代码示例和详细注释&#xff0c;指导读者在Spring…

【数据分享】1929-2023年全球站点的逐年最高气温数据(Shp\Excel\免费获取)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、湿度等指标&#xff0c;其中又以气温指标最为常用&#xff01;说到气温数据&#xff0c;最详细的气温数据是具体到气象监测站点的气温数据&#xff01; 之前我们分享过1929-2023年全球气象站…

python如何实现异步并发

下面是一个示例代码&#xff0c;展示了如何设计一个异步线程池&#xff0c;并实现线程池满了就等待&#xff0c;空了就继续扔的功能&#xff1a; import concurrent.futures import time # 创建一个线程池 thread_pool concurrent.futures.ThreadPoolExecutor(max_workers8) …

el-table动态合并

废话就不多说了&#xff0c;直接上代码&#xff01;&#xff01;&#xff01; 合并行 // 方法一 <template><div class"container"><el-table :data"dataSource" :border"true":header-cell-style"{ font-weight: normal,…

Kotlin中的内置函数-apply、let

在使用Kotlin的过程中会经常用到其内置函数&#xff0c;包括apply&#xff0c;let&#xff0c;run&#xff0c;with&#xff0c;also&#xff0c;takeIf,takeUnless函数等&#xff0c;想要更好熟悉Kotlin&#xff0c;这些函数必须烂熟于心&#xff0c;接下来让我们来逐步了解&a…

大语言模型之LlaMA系列- LlaMA 2及LLaMA2_chat(上)

LlaMA 2是一个经过预训练与微调的基于自回归的transformer的LLMs&#xff0c;参数从7B至70B。同期推出的Llama 2-Chat是Llama 2专门为对话领域微调的模型。 在许多开放的基准测试中Llama 2-Chat优于其他开源的聊天模型&#xff0c;此外Llama 2-Chat还做了可用性与安全性评估。 …

CKS1.28【1】kube-bench 修复不安全项

Context 针对 kubeadm 创建的 cluster 运行 CIS 基准测试工具时&#xff0c;发现了多个必须立即解决的问题。 Task 通过配置修复所有问题并重新启动受影响的组件以确保新的设置生效。 修复针对 API 服务器发现的所有以下违规行为&#xff1a; 1.2.7 Ensure that the --authoriz…

JVM技术文档-Arthas--线上内存问题定位

阿丹&#xff1a; 记录一次线上问题的定位&#xff0c;以及解释和讲解一下在docker容器中arthas的使用。 arthas使用文档&#xff1a; 我先给官方的文档放在这里&#xff0c;在文章中我使用的代码和解释我也会写&#xff0c;但是针对于每个人遇到的情况不一样&#xff0c;我这…

HiveSQL题——array_contains函数

目录 一、原创文章被引用次数 0 问题描述 1 数据准备 2 数据分析 ​编辑 3 小结 二、学生退费人数 0 问题描述 1 数据准备 2 数据分析 3 小结 一、原创文章被引用次数 0 问题描述 求原创文章被引用的次数&#xff0c;注意本题不能用关联的形式求解。 1 数据准备 i…

OpenCV 13 - 图像对比度和亮度的调节基本阈值操作

1 图像阈值 图像阈值是一种图像处理技术,用于将图像转换为二值图像。通过设定一个阈值,将图像中的像素值与阈值进行比较,将大于或小于阈值的像素分别设置为不同的像素值,从而实现图像的二值化处理。 2 阈值类型 2-1 阈值类型-阈值二值化(threshold binary) 2-2 阈值类型…

学习Android的第一天

目录 什么是 Android&#xff1f; Android 官网 Android 应用程序 Android 开发环境搭建 Android 平台架构 Android 应用程序组件 附件组件 Android 第一个程序 HelloWorld 什么是 Android&#xff1f; Android&#xff08;发音为[ˈnˌdrɔɪd]&#xff0c;非官方中文…