【pandas】结合泰坦尼克生还分析讲讲pandas常用基础操作
目录
- 1.导入库
- 2.数据读取
- 3.基本信息查看
- 4.获取列
- 5.缺失值处理
- 6.数据映射
- 7.删除数据
- 8.增加数据
- 9.筛选查找
- 10.排序
- 11.数据透视
- 1).船舱等级与生存率
- 2).性别与生存率
- 12.简单绘图
- 3).年龄与生存率
本文旨在结合经典案例:泰坦尼克号数据集,介绍pandas的基础操作,力求简洁清晰,可以作为一个教程,也可以作为一个速查表,欢迎多多收藏点赞~
泰坦尼克号数据集是一个非常经典的数据集,它记录了泰坦尼克号的乘客信息,包括年龄、性别、是否存活等等。
我们可以用pandas来对其进行分析,一步一步揭开数据里的秘密,探索泰坦尼克号生还者们背后的真相
1.导入库
首先,我们要把我们的工具:pandas,从工具箱里拿出来
import pandas as pd
2.数据读取
pandas是一个处理数据的全能型工具箱,你能想到的任何数据处理的操作,它都能做
然后用pandas取出我们要加工的对象:数据集。
data = pd.read_csv("Titanic.csv")
3.基本信息查看
查看数据有哪些字段:
# 查看数据有哪些字段
data.columns# 描述性统计分析
data.describe()# 展示前3行数据
data.head(3)
4.获取列
# 获取单列
data.Name
# 获取多列
data[["Name","Age"]]
5.缺失值处理
有时候数据并不不完整,存在一些缺失,这时候可以对缺失值进行一些填充
# 查看各列缺失值个数
data.isnull().sum()# 指定值填充缺失值
data.Embarked.fillna("S")# 均值填充
data.Age.fillna(data.Age.mean())
6.数据映射
在Excel中,VLOOKUP是很常用的方法,当然pandas也能做到
例如:将数据中’male’映射为1,'female’映射为0
mapping = {"male":1, "female":0}
data.Sex.map(mapping)
7.删除数据
当我不想要一些数据时,可以把它删除掉
例如PassengerId,仅仅是一个ID,没有实际意义,那么可以把它删除掉
data.drop("PassengerId",axis=1)
8.增加数据
可以根据一列或多列,计算出新的列,这在pandas里十分常见
在数据集中,SibSp表示乘客兄弟姐妹的数量,Parch表示父母孩子的数量
可以新建一列family,表示在船上他又多少个亲人
data["family"] = data["SibSp"] + data["Parch"]
9.筛选查找
筛选查找是十分常用且重要的操作.pandas提供了比数据库更简洁优雅的查找操作.
例如:筛选出生还的乘客:
data.query("Survived == 1")
再例如:筛选大于八十岁的生还乘客:
data.query("Survived == 1 and Age >= 80")
10.排序
例如,按照年龄降序排列
data.sort_values(by = ["Age"],ascending = False)
11.数据透视
结合数据透视,我们一起分析一下泰坦尼克号生存情况如何
1).船舱等级与生存率
以船舱等级为行,生存情况为列 ; 对生存情况求平均,可以得到生存率
Pclass
1 0.629630
2 0.472826
3 0.242363
Name: Survived, dtype: float64
可以看到船舱等级越高,生还概率越大. 实际上,船舱等级越高,安全就越有保障,例如离逃生舱更近,有更高几率逃生.
2).性别与生存率
以船舱等级为行,生存情况为列 ; 对生存情况求平均
Sex
female 0.742038
male 0.188908
Name: Survived, dtype: float64
女性生存率远远高于男性,这也体现出19世纪英国人的绅士风度,在大难临头时让女人孩子老人先上逃生船
12.简单绘图
结合图片,我们最后看看年龄与生还率之间的关系
3).年龄与生存率
df1 = data.query("Survived == 1").Age
df2 = data.query("Survived == 0").Ageimport matplotlib.pyplot as plt
plt.hist([df1,df2],stacked=True,label=['Rescued','not saved'])plt.legend()
plt.title('title')
plt.title('Age_Survived')
【pandas】结合泰坦尼克生还分析讲讲pandas常用基础操作相关推荐
- python mean dropna_小丸子踏入python之路:python_day05(用Pandas处理泰坦尼克船员获救数据titanic_train.csv)...
泰坦尼克船员获救数据: titanic_train.csv 用excel打开数据集.显示如下: 写在前边: 为了方便以后运用numpy和pandas的库,分别造它们的别名np和pd. import p ...
- 头哥教学平台-泰坦尼克生还预测-可视化与探索性数据分析
第1关 存活率与性别和船舱等级之间的关系 import pandas as pd import numpy as np import seaborn as sns import warnings wa ...
- 10种流行的机器学习算法进行泰坦尼克幸存者分析
还记得上世纪轰动全球的泰坦尼克吗? 1912年4月,正在处女航的泰坦尼克号在撞上冰山后沉没,2224名乘客和机组人员中有1502人遇难,这场悲剧轰动全球,遇难的一大原因正式没有足够的就剩设备给到船上的 ...
- Educoder中题目:泰坦尼克生还预测——可视化与探索性数据分析
第1关:存活率与性别和船舱等级之间的关系 import pandas as pdimport numpy as npimport seaborn as snsimport warningswarnin ...
- Kaggle竞赛——Titanic泰坦尼克之灾(保姆级基础版)
Kaggle竞赛网址:https://www.kaggle.com/c/titanic 本次Kaggle泰坦尼克之灾分析过程大致分为: 第1步:了解数据 第2步:分析数据之间的关系 第3步:缺失项数据 ...
- Titanic 泰坦尼克数据集 特征工程 机器学习建模
以下内容为讲课时使用到的泰坦尼克数据集分析.建模过程,整体比较完整,分享出来,希望能帮助大家.部分内容由于版本问题,可能无法顺利运行. Table of Contents 1 经典又有趣的Titan ...
- 集成算法-随机森林与案例实战-泰坦尼克获救预测
集成算法-随机森林 Ensemble learning 目的:让机器学习效果更好,单个不行,群殴走起 Bagging:训练多个分类器取平均 f ( x ) = 1 / M ∑ m = 1 M f m ...
- Kaggle竞赛——Titanic泰坦尼克之灾(0.76315==>0.79186)
Kaggle竞赛网址:https://www.kaggle.com/c/titanic 上一章:Kaggle竞赛--Titanic泰坦尼克之灾(保姆级基础版) 本次Kaggle泰坦尼克之灾分析过程大致 ...
- 泰坦尼克数据集预测分析_探索性数据分析—以泰坦尼克号数据集为例(第1部分)
泰坦尼克数据集预测分析 Imagine your group of friends have decided to spend the vacations by travelling to an am ...
- 数据分析实际案例之:pandas在泰坦尼特号乘客数据中的使用
文章目录 简介 泰坦尼特号乘客数据 使用pandas对数据进行分析 引入依赖包 读取和分析数据 图形化表示和矩阵转换 简介 1912年4月15日,号称永不沉没的泰坦尼克号因为和冰山相撞沉没了.因为没有 ...
最新文章
- Flex与.NET互操作(十):基于FluorineFx.Net的及时通信应用(Real-time Messaging Applications)(一)...
- C# Math类简介
- android 是否允许打印debug级别日志的开关_Android学习——日志使用
- BERT论文阅读(二): CG-BERT:Conditional Text Generation with BERT for Generalized Few-shot Intent Detection
- 激动的时刻,终于成啦~
- flann中关于数据的stride
- php常用技术与thinkphp5,thinkPHP5框架路由常用知识点汇总
- 【数据结构_浙江大学MOOC】第六七八讲 图
- Enterprise Library: Data Access Application Block使用向导,Part 1
- Mysql时间戳转日期-日期转时间戳
- 微信小程序,实现一个简易的新闻网
- Go代码调优利器-火焰图
- ajax前后端通信的头部消息之请求头与响应头
- 中国前十软件公司招聘官网聚合
- 【shell案例】CentOS7安装MySQL脚本案例
- [论文笔记|VIO]ICE-BA: Incremental, Consistent and Efficient Bundle Adjustment for Visual-Inertial SLAM
- HI3516AD+OV4689内核编译
- 蓝牙技术|一文带你了解电动车蓝牙钥匙
- 电商宝打单发货-打单设置
- Java抽奖-总概率中奖几率