首页 > 其他分享 >数据分析--探索泰坦尼克灾难数据

数据分析--探索泰坦尼克灾难数据

时间:2023-07-25 10:03:01浏览次数:33  
标签:数据分析 count 生还 -- 乘客 Sex df 泰坦尼克 性别

影响乘客生还的因素很多,这里只对乘客的性别、年龄、乘客等级这三个因素感兴趣,看看这三个因素是否会影响乘客的生还率。

  1. 性别是否会影响生还率
  2. 年龄是否会影响生还率
  3. 乘客等级会否会影响乘客率
  4. 性别和等级共同对生还率的影响
  5. 年纪和性别共同对生还率的影响
  6. 年纪和等级共同对生还率的影响

这里:乘客的性别、年龄、等级是三个自变量,生还率是因变量

1、导入数据
import pandas as pd
from matplotlib import pyplot as plt

plt.rcParams['font.sans-serif'] = [u'SimHei'] # SimHei就是中文字体
# 因为设置了中文后,负号就乱码了,所以还要设置负号的编码
plt.rcParams['axes.unicode_minus'] = False # 修改坐标轴中符号的编码

df  = pd.read_csv('train.csv')
2、查看基本信息
df.info()

数据分析--探索泰坦尼克灾难数据_数据

可以看到,一共有 891 条数据,其中 Age 、 Carbin、Embarked 字段有缺失值或为NaN

熟悉数据

PassengerId:乘客ID Survived:是否获救,用1和Rescued表示获救,用0或者not saved表示没有获救 Pclass:乘客等级,“1”表示Upper,“2”表示Middle,“3”表示Lower Name:乘客姓名 Sex:性别 Age:年龄 SibSp:乘客在船上的配偶数量或兄弟姐妹数量) Parch:乘客在船上的父母或子女数量 Ticket:船票信息 Fare:票价 Cabin:是否住在独立的房间,“1”表示是,“0”为否 embarked:表示乘客上船的码头距离泰坦尼克出发码头的距离,数值越大表示距离越远

查看前5条数据

df.head()

数据分析--探索泰坦尼克灾难数据_数据_02

查看数据的摘要信息

df.describe()

数据分析--探索泰坦尼克灾难数据_字段_03

从数据摘要中可以看出。乘客的生还率大约在38%,超过50%的乘客在3等级,乘客的平均年龄在30岁左右,普遍比较年轻。

3、数据清洗和处理缺失值

因为这里只研究年龄、性别、等级对乘客生还率的影响,所以只对年龄的缺失值进行处理。处理Age的缺失值2种方案

  1. 删除缺失行dropna
  2. 填充 fillna() ,填充中位数或平均数

因为Age是连续的,所以可以使用其平均数来填充缺失值

age_mean = df['Age'].mean()
# 重新赋值给 Age字段,修改源数据
df['Age'] = df['Age'].fillna(age_mean)

再次查看数据信息可以发现Age已经被填充

数据分析--探索泰坦尼克灾难数据_字段_04

处理性别数据原数据中性别数据值是字符串类型,不便于计算和绘图,需要换成数值,用1代表男性,用0代表女性,将性别数值化。

使用apply函数

def sex_value(Sex):
    if Sex=='male':
        return 1
    else:
        return 0

df['Sex'] .apply(sex_value)

使用map函数

df['Sex'] = df['Sex'].map({'male':1,'female':0})
df.head()

数据分析--探索泰坦尼克灾难数据_缺失值_05

4、

获取生还乘客的DataFrame,即 Survived 为1

survives_passenger_df = df[df['Survived']==1]
survives_passenger_df.head()

数据分析--探索泰坦尼克灾难数据_缺失值_06

计算生还者中男性和女性的人数

# 按性别分组,再统计其数量
survives_passenger_df.groupby('Sex', as_index=False)['Sex'].count()

数据分析--探索泰坦尼克灾难数据_字段_07

获取到具体数值,并绘制饼状图

male = survives_passenger_df.groupby('Sex', as_index=False)['Sex'].count().iloc[1][0]

female = survives_passenger_df.groupby('Sex', as_index=False)['Sex'].count().iloc[0][0]
plt.pie([male, female], labels=['男','女'], autopct='%1.1f%%')
plt.show()

数据分析--探索泰坦尼克灾难数据_缺失值_08

可以直观看到,生还者中,女性人数是男性人数的两倍还多。但是还不能说明性别是否会影响生还率。需要看占比情况

分别获取乘客中男性、女性人数

male_count = df[df['Sex']==1]['Sex'].count()

female_count = df[df['Sex']==0]['Sex'].count()

分别计算男、女性生还者占总人数的比值

a = male/male_count*100

b = female/female_count*100

使用表格形式呈现

survives_df = pd.DataFrame({'生还人数':[male,female], '总人数':[male_count,female_count], '生还率':['%.3f%%'%a,'%.3f%%'%b]},index=['男','女'])
survives_df

数据分析--探索泰坦尼克灾难数据_缺失值_09

这样,就可以发现,女性生还率远远高于男性生还率,说明性别会影响生还率。

标签:数据分析,count,生还,--,乘客,Sex,df,泰坦尼克,性别
From: https://blog.51cto.com/u_16200991/6842579

相关文章

  • Redis的RDB快照:保障数据持久性的关键机制
    Redis(RemoteDictionaryServer)是一个流行的开源内存数据库,以其高性能和灵活的数据结构而广受欢迎。然而,由于Redis的内存存储特性,一旦服务器发生故障或断电,内存中的数据将会丢失。为了确保数据的持久性和可靠性,Redis引入了RDB(RedisDatabase)快照持久化机制。本文将深入介绍Redis的R......
  • 在线传单制作工具介绍
    让我们谈谈如何制作成功的商业传单进行促销。宣传传单的主要目的是吸引注意力。无论您是要开设商店还是想吸引新客户,您都需要醒目的且时尚的促销传单。使用传单的原因很多,无论您是要宣传活动,为新业务或其他目的建立品牌知名度。无论您为什么要创建传单,都需要记住一件事–传单设计。......
  • 点晴ERP助力模切企业推进业财一体化建设
    没有财务成本核算和总账管理功能的系统可以说算不上完善的ERP系统!点晴ERP企业资源管理信息系统提供了完整的业财一体化管理功能:点晴模切ERP系统可以细化到每一张工单的直接生产制造成本,同时送货单、入库单、生产工单等各种单据自动过账到财务模块自动生成相应凭证,无需人工手工二次......
  • 免费的云端软件开发绘图工具
    为您的软件开发项目寻找免费的图表工具。无论您使用的是更正式的方法,如UML还是敏捷方法,visualparadigmonline都是您理想的基于云的环境的绘图工具,但它对于个人使用是完全免费的。它有最广泛的图表种类,提供了200多种不同的图表类型,从UML图表、ERD、不同风格的DFD,如SSADMPeterCoad......
  • 如何利用Infographic制作吸引目光的简历
    许多雇主不再遵循标准的“申请--等待”申请模式。现在,他们在社交媒体上查看求职者,访问他们的个人网站,接受更有创意的求职申请。资讯图简历是向雇主展示您为什么值得他们关注的创造性方式。虽然资讯图简历通常不能完全取代标准简历,但它们非常适合面试、在网站或社交媒体页面上发布......
  • 免费创建2020年圣诞贺卡
    由于COVID-19大流行,许多家庭准备在今年放弃常规的节日庆祝活动。许多错过庆祝活动的人可能计划为长途聚会举行视频会议,并分享他们漂亮的圣诞贺卡,这将使每个人与朋友,亲戚或亲人的联系更加紧密。寻找DIY圣诞贺卡的想法吗?现在,您可以创建个性化卡片尝试使用VisualParadigmOnline,并使......
  • SAP常用数据库包括哪些?
    SAP系统涉及到各种数据,而这些数据需要存储在某些数据库中。那么SAP系统中存储什么类型的数据?这些数据存储在哪些数据库中?了解这些信息,可以更好地理解SAP系统的运作方式。SAP系统中常见的数据:客户(Customer)和供应商(Vendor)数据:这些数据包含有关公司的客户和供应商的详细信息,例如他们的......
  • TOGAF 9.2有什么新东西?
    TOGAF标准是TheOpenGroup的标准,是经过验证的企业架构方法和框架,由世界领先的组织用于提高业务效率。TOGAF于1995年开发,多年来定期更新,以跟上企业架构和技术管理的新方法和新发展。TOGAF9于2009年推出,TOGAF9.1于2012年6月实施。最新更新TOGAF9.2于2018年4月发布。TOGAF9.2标准......
  • 用例图表示法指南
    用例图是一种 UML图。以下是UML用例图中支持的统一建模语言(UML)符号列表:图标名称用例用例表示可以通过访问系统或软件应用程序来实现的用户目标。在VisualParadigm通过在用例下创建子序列图,您可以利用子图功能来描述用例与用户之间的交互。您还可以使用“事件流”编辑器描述用例......
  • 爬虫js基础
    URL转义fromurllib.parseimportunquote_plus,quote_plusconstjsdom=require('jsdom');npminstalljsdomnpminstallcrypto-js碰到数据加密可以使用这个作为入口的多种方法解密:decrypt,加密搜encryptajax渲染JSON.parse——————JSON.parse(函数或者方法(密文))---搜......