Kanggle入门程序-预测Titanic生存率

本文介绍了在Kaggle上使用泰坦尼克号数据集进行生存率预测的完整流程,包括数据导入、分析、预处理、模型建立和调优。文章重点讨论了数据处理的重要性,如缺失值处理、特征转换,并展示了如何使用线性分类模型。作者通过模型比较、交叉验证和超参数优化,逐步优化模型性能。
摘要由CSDN通过智能技术生成

如何预测Titanic生存率的流程

  1. 简介
    这是kaggle上入门推荐的测试例子,我将经历在著名的泰坦尼克号数据集上创建一个机器学习模型的全过程,这个模型已经被全世界的许多初学者所使用。 它提供关于泰坦尼克号旅客命运的信息,根据经济状况(等级),性别,年龄和生存情况进行总结。 在这个挑战中,我们被要求预测泰坦尼克号上的乘客是否会幸存下来。
    接下来我将介绍自己在学习这个完整的数据处理、模型建立过程的一些主要步骤,即可以复制到其他模型建立的通用步骤 与心得体会。因为我也是学习入门,这里只介绍每一个步骤的一个示例,这些代码是参考kaggle上一位大牛的模型,我只是理解,学习他的建立步骤,最后会附上他的代码链接,有需要可以去下载运行。
  2. 学习流程
    2.1 导包
    这是一个典型的二分类问题,也就是乘客只有两种选择,生和死,所以我只导入线性分类的包。
# 线性运算
import numpy as np 

# 数据处理
import pandas as pd 

# 数据可视化
import seaborn as sns
%matplotlib inline
from matplotlib import pyplot as plt
from matplotlib import style

# 算法
# Algorithms
from sklearn import linear_model#线性模型
from sklearn.linear_model import LogisticRegression
from sklearn.ensemble import RandomForestClassifier#随机森林
from sklearn.linear_model import Perceptron#感知器
from sklearn.linear_model import SGDClassifier#随机梯度下降
from sklearn.tree import DecisionTreeClassifier#决策树分类器
from sklearn.neighbors import KNeighborsClassifier#k-邻近分类器
from sklearn.svm import SVC, LinearSVC#线性SVC
from sklearn.naive_bayes import GaussianNB#高斯朴素贝叶斯

2.2 数据分析
这里先导入数据,然后利用pandas的函数简单的观察数据含有哪些特征,它们的一些统计数据,例如均值,标准差,百分位数等。

train_df=pd.read_csv('train.csv')#读取数据
train_df.info()#数据列信息

这里写图片描述

train_df.describe()#mean 平均值,std标准差,min 最小值,25%百分位数

这里写图片描述

train_df.head()#显示前5行数据

这里写图片描述
2.3 统计缺失值程度

total = train_df.isnull().sum().sort_values(ascending=False)
percent_1 = train_df.isnull().sum()/train_df.isnull().count()*100
#计算缺失值百分比,大致判断处理的复杂度,以及该数据是否有用的必要
percent_2 = (round(percent_1, 1)).sort_values(ascending=False)#降序排列
missing_data = pd.concat([total, percent_2], axis=1, keys=['Total', '%'])#连接函数concat
missing_data.head(5)

这里写图片描述
2.4 分析各个变量与生存率之间的关系(这里只介绍一个示例)

  • 例如:Age 和 Sex
survived = 'survived'
not_survived = 'not survived'
fig, axes = plt.subplots(nrows=1, ncols=2,figsize=(10, 4))#12列,两个图
women = train_df[train_df
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值