暑期实训Python第十天,seaborn画图 --------<泰坦尼克号沉船>数据可视化

本文主要是介绍暑期实训Python第十天,seaborn画图 --------<泰坦尼克号沉船>数据可视化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

网上的泰坦尼克号沉船数据可视化,写的全是代码,没点分析过程,干脆我自己来写

• PassengerId => 乘客ID
• Survived => 获救情况(1为获救,0为未获救)
• Pclass => 乘客等级(1/2/3等舱位)
• Name => 乘客姓名
• Sex => 性别
• Age => 年龄
• SibSp => 堂兄弟/妹个数
• Parch => 父母与小孩个数
• Ticket => 船票信息
• Fare => 票价
• Cabin => 客舱
• Embarked => 登船港口

先分析 不同等级的船舱 里的存活率(条形图)

Pclass 分成1,2,3个等级 Survived 分为 0 和 1
使用groupby 将数据 分成组, 比如groupby("Pclass"),可以将数据划分成三个部分。
groupby(["Pclass","Survived"])就将数据分成六个部分

estimator:可回调函数
作用:设置每个分类箱的统计函数

指定x分类变量进行分组,指定 y为数据分布,绘制垂直条形图

sns.barplot(x=df.Pclass, y=df.Survived, estimator=lambda x: np.sum(x) / len(x), data=df)
plt.show()

在这里插入图片描述
分析结果
一等舱位 的乘客存活率最大,最容易存活,存活率为0.629
三等舱的 乘客存活几率最小,存活率为0.2423

分析年龄和存活率 的关系

df["Age"].describe()
count    714.000000
mean      29.699118
std       14.526497
min        0.420000
25%       20.125000
50%       28.000000
75%       38.000000
max       80.000000
Name: Age, dtype: float64

总数据有891条,可是年龄只有714,说明年龄有很多为 空值,所以为了数据的可靠性,将空值转变成 平均值

df.fillna({"Age":df.Age.mean()},inplace=True)

在这里插入图片描述

#年龄的直方图
sns.distplot(df.Age,bins=20)
plt.show()

在这里插入图片描述

仿照上面生成船舱等级和存活率 第一个的做法:

sns.barplot(x=df.Age, y=df.Survived, estimator=lambda x: np.sum(x) / len(x), data=df)

结果: 是很多密密麻麻的矩形,非常难观察出规律
在这里插入图片描述
这里就提到了一个新的名词:连续数据离散化,通俗的将就是分段

这里又由于作者的知识 是白痴状态,这里就需要弄懂cut 方法里的bins属性
小tips:
pandas中pd.cut()的功能和作用,cut(a,bins) a指的是需要切分的对象,b指的是需要将对象切成什么样子的份,bins是一个列表bins = [0, 59, 70, 80, 100]。这里题目可以将年龄范围从0-80,以10岁为区间,生成8个矩形

df["Age_band"] = pd.cut(df.Age,bins=np.arange(0,90,10))
sns.barplot(x="Age_band", y=df.Survived, estimator=lambda x: np.sum(x) / len(x), data=df)

在这里插入图片描述
观察图形可以分析出:
10岁以下的孩子存活率最高,说明船上的人还是非常有人性的,而大于60岁的人,存活率偏低,说明老人行走不便,然后你懂的。普通人的存活率不超过0.5,说明基本上等于选择一个就等于放弃另外一个。

分析其他的数据和存活率的关系,由于代码一样就展示图:
在这里插入图片描述
在这里插入图片描述

性别影响真的很大

在这里插入图片描述

这篇关于暑期实训Python第十天,seaborn画图 --------<泰坦尼克号沉船>数据可视化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/213234

相关文章

使用Python创建一个能够筛选文件的PDF合并工具

《使用Python创建一个能够筛选文件的PDF合并工具》这篇文章主要为大家详细介绍了如何使用Python创建一个能够筛选文件的PDF合并工具,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录背景主要功能全部代码代码解析1. 初始化 wx.Frame 窗口2. 创建工具栏3. 创建布局和界面控件4

一文详解如何在Python中使用Requests库

《一文详解如何在Python中使用Requests库》:本文主要介绍如何在Python中使用Requests库的相关资料,Requests库是Python中常用的第三方库,用于简化HTTP请求的发... 目录前言1. 安装Requests库2. 发起GET请求3. 发送带有查询参数的GET请求4. 发起PO

Python与DeepSeek的深度融合实战

《Python与DeepSeek的深度融合实战》Python作为最受欢迎的编程语言之一,以其简洁易读的语法、丰富的库和广泛的应用场景,成为了无数开发者的首选,而DeepSeek,作为人工智能领域的新星... 目录一、python与DeepSeek的结合优势二、模型训练1. 数据准备2. 模型架构与参数设置3

Python进行PDF文件拆分的示例详解

《Python进行PDF文件拆分的示例详解》在日常生活中,我们常常会遇到大型的PDF文件,难以发送,将PDF拆分成多个小文件是一个实用的解决方案,下面我们就来看看如何使用Python实现PDF文件拆分... 目录使用工具将PDF按页数拆分将PDF的每一页拆分为单独的文件将PDF按指定页数拆分根据页码范围拆分

javaScript在表单提交时获取表单数据的示例代码

《javaScript在表单提交时获取表单数据的示例代码》本文介绍了五种在JavaScript中获取表单数据的方法:使用FormData对象、手动提取表单数据、使用querySelector获取单个字... 方法 1:使用 FormData 对象FormData 是一个方便的内置对象,用于获取表单中的键值

Python中常用的四种取整方式分享

《Python中常用的四种取整方式分享》在数据处理和数值计算中,取整操作是非常常见的需求,Python提供了多种取整方式,本文为大家整理了四种常用的方法,希望对大家有所帮助... 目录引言向零取整(Truncate)向下取整(Floor)向上取整(Ceil)四舍五入(Round)四种取整方式的对比综合示例应

python 3.8 的anaconda下载方法

《python3.8的anaconda下载方法》本文详细介绍了如何下载和安装带有Python3.8的Anaconda发行版,包括Anaconda简介、下载步骤、安装指南以及验证安装结果,此外,还介... 目录python3.8 版本的 Anaconda 下载与安装指南一、Anaconda 简介二、下载 An

Python自动化处理手机验证码

《Python自动化处理手机验证码》手机验证码是一种常见的身份验证手段,广泛应用于用户注册、登录、交易确认等场景,下面我们来看看如何使用Python自动化处理手机验证码吧... 目录一、获取手机验证码1.1 通过短信接收验证码1.2 使用第三方短信接收服务1.3 使用ADB读取手机短信1.4 通过API获取

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

Python脚本实现图片文件批量命名

《Python脚本实现图片文件批量命名》这篇文章主要为大家详细介绍了一个用python第三方库pillow写的批量处理图片命名的脚本,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言源码批量处理图片尺寸脚本源码GUI界面源码打包成.exe可执行文件前言本文介绍一个用python第三方库pi