泰坦尼克数据分析可视化预处理实验Tatinic

在数据预处理之前,我们首先看一下数据的大致轮廓。

import pandas as pd
train = pd.read_csv('C:/Users\qzm\Desktop/titanic.csv')
#pd.read_csv()用于读取csv文件
train.head()


各个列标签的含义:
PassengerId :乘客Id
Survived:是否存活,存活为1,死亡为0
Pclass: 客舱等级
Name:乘客姓名
Sex:性别
Age:年龄
Sibsp:是否有兄弟姐妹
Parch: 是否有父母子女
Ticket:票编号
Fare:费用
Cabin:船舱类型
Embarked:上船地点

train.info()
#看一下每一列有多少数据

在这里插入图片描述
可以看出Age和Cabin缺失的比较严重

train.describe()

在这里插入图片描述
对各列的统计描述

train.Embarked[train.Embarked.isnull()] =
train.Embarked.dropna().mode().values
#Embarked是上船地点,其实和预测存活率关系不大,可以用众数填充
#isnull()用来提取空值
#dropna()用于舍弃空值
#values()用于提取所有值

train.info()  

在这里插入图片描述
再看一下,Embarked的列确实已经被填充完了

#Cabin特征缺失的太多,并未找到是否和存活率有关,暂时不考虑,赋给U0做个标记
train["Cabin"]=train["Cabin"].fillna("U0")
#fillna()用于填补空值函数
#Age的特征比较重要,预测的准确率很大程度上跟年龄有关
#初步的想法是通过随机森林方法填充Age缺失值
from sklearn.ensemble import RandomForestRegressor as RFR
#先选取数值特征进行预测
age_df = train[["Age","Survived","Fare","Parch","SibSp","Pclass"]]
#只提取这六个特征的数据,因为其它特征根年龄关系不大

age_df_notnull = age_df.loc[(train["Age"].notnull())]
#提出Age不为空的数据
#loc()通过每一列的数据来索引对应每一行的数据

age_df_isnull = age_df.loc[(train["Age"].isnul
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值