与网上的其他内容均一样

import pandas as pd
titanic = pd.read_csv('http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataSets/titanic.txt')
titanic.head()
.dataframe thead tr:only-child th { text-align: right; } .dataframe thead th { text-align: left; } .dataframe tbody tr th { vertical-align: top; }

row.names pclass survived name age embarked home.dest room ticket boat sex
0 1 1st 1 Allen, Miss Elisabeth Walton 29.0000 Southampton St Louis, MO B-5 24160 L221 2 female
1 2 1st 0 Allison, Miss Helen Loraine 2.0000 Southampton Montreal, PQ / Chesterville, ON C26 NaN NaN female
2 3 1st 0 Allison, Mr Hudson Joshua Creighton 30.0000 Southampton Montreal, PQ / Chesterville, ON C26 NaN (135) male
3 4 1st 0 Allison, Mrs Hudson J.C. (Bessie Waldo Daniels) 25.0000 Southampton Montreal, PQ / Chesterville, ON C26 NaN NaN female
4 5 1st 1 Allison, Master Hudson Trevor 0.9167 Southampton Montreal, PQ / Chesterville, ON C22 NaN 11 male
titanic.info()
X = titanic[['pclass', 'age', 'sex']]
y = titanic['survived']
X.info()
X.head()
# 使用均值对AGE进行插值
X['age'].fillna(X['age'].mean(), inplace=True)
X.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1313 entries, 0 to 1312
Data columns (total 3 columns):
pclass    1313 non-null object
age       1313 non-null float64
sex       1313 non-null object
dtypes: float64(1), object(2)
memory usage: 30.9+ KBD:\Program Files\Anaconda35\lib\site-packages\pandas\core\generic.py:3660: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrameSee the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copyself._update_inplace(new_data)
# 数据分割
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state=33)
X_train.head()
X_train.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 984 entries, 1086 to 1044
Data columns (total 3 columns):
pclass    984 non-null object
age       984 non-null float64
sex       984 non-null object
dtypes: float64(1), object(2)
memory usage: 30.8+ KB
from sklearn.feature_extraction import DictVectorizer
# 原文 vec = DictVectorizer(sparse=False) 报错
vec = DictVectorizer()X_train = vec.fit_transform(X_train.to_dict(orient = 'record'))
X_test = vec.transform(X_test.to_dict(orient = 'record'))
#X_train.to_dict(orient='record')
vec.feature_names_
['age', 'pclass=1st', 'pclass=2nd', 'pclass=3rd', 'sex=female', 'sex=male']
from sklearn.tree import DecisionTreeClassifier
dtc = DecisionTreeClassifier()
dtc.fit(X_train, y_train)
y_predict = dtc.predict(X_test)
from sklearn.metrics import classification_report
print(dtc.score(X_test, y_test))
0.781155015198
print(classification_report(y_predict, y_test, target_names=['died', 'survived']))
             precision    recall  f1-score   supportdied       0.91      0.78      0.84       236survived       0.58      0.80      0.67        93avg / total       0.81      0.78      0.79       329

Python 决策树 泰坦尼克号乘客是否生还决策模型相关推荐

  1. 决策树模型之泰坦尼克号乘客是否生还预测

    泰坦尼克号乘客数据查验 import pandas as pd #利用pandas的read_csv模块直接从互联网收集泰坦尼克号乘客数据 titanic = pd.read_csv('http:// ...

  2. 'python program'.count('p')的值是_如何用Python分析泰坦尼克号生还率?

    原标题:如何用Python分析泰坦尼克号生还率? 1912年当时世界上最大的豪华客轮泰坦尼克号在处女航中撞上冰山沉没,船上船员及乘客共有2224人,只有710人生还.当灾难突然降临时,所有人的生死瞬间 ...

  3. ML之RFXGBoost:基于RF/XGBoost(均+5f-CrVa)算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还)

    ML之RF&XGBoost:基于RF/XGBoost(均+5f-CrVa)算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还) 目录 输出结果 比赛结果 设计思路 核心代码 ...

  4. ML之RFXGBoost:分别基于RF随机森林、XGBoost算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还)

    ML之RF&XGBoost:分别基于RF随机森林.XGBoost算法对Titanic(泰坦尼克号)数据集进行二分类预测(乘客是否生还) 目录 输出结果 设计思路 核心代码 输出结果 设计思路 ...

  5. 机器学习中的特征选择——决策树模型预测泰坦尼克号乘客获救实例

    在机器学习和统计学中,特征选择(英语:feature selection)也被称为变量选择.属性选择或变量子集选择.它是指:为了构建   模型而选择相关特征(即属性.指标)子集的过程.使用特征选择技术 ...

  6. 泰坦尼克号上的乘客是否生还的预测分析

    1 本文是以<Python机器学习及实践 从零开始通往kaggle竞赛之路>为参考书籍进行的实践 通过随机分类模型以及XGBoost模型进行泰坦尼克号上的乘客是否生还的预测分析 2 实验代 ...

  7. gini系数 决策树_案例7:机器学习--使用决策树实现泰坦尼克号乘客生存率预测...

    一.决策树简介 1.1 什么是决策树? 决策树:是一种树形结构,其中每个内部节点表示一个属性上的判断,每个分支代表一个判断结果的输出,最后每个叶节点代表一种分类结果,本质是一颗由多个判断节点组成的树. ...

  8. 泰坦尼克号python数据分析统计服_泰坦尼克号乘客数据分析

    本文是优达学城数据分析师 P2 项目的结课报告,主要探寻泰坦尼克号上的生还率和各因素(客舱等级.年龄.性别.上船港口等)的关系. # Imports import numpy as np import ...

  9. 泰坦尼克号乘客生存情况分析第一部分

    第一部分 数据读取及探索性分析 哈喽,各位小伙伴.今晚是平安夜,就先祝大家平安夜快乐,永远平安健康.泰坦尼克号相信很多人都不陌生,今天呢,主要聊一聊之前做过的一个小项目,预测下泰坦尼克号乘客的生存情况 ...

最新文章

  1. ## 使用MapReduce程序完成相关数据预处理
  2. UVA 617 - Nonstop Travel(数论+暴力枚举)
  3. 曝!BAT大厂NLP学习进阶之法~
  4. python response重头开始_你必须学写 Python 装饰器的五个理由
  5. 【模型加速】TensorRT详解
  6. 90 后程序员开发“AI 吵架神器”,专治女朋友各种不服!
  7. 三个月可更改用户昵称两次
  8. IDEA 快速创建 SpringBoot 项目
  9. Focal loss原理解析
  10. 电路——三极管(一)辨认极性和判断类型(原理图中)
  11. 寻找开发区块链协议的完美编程语言
  12. 【ArcGIS 10.2新特性】地理数据(Geodatabase 和database)10.2 新特性
  13. Snmp4j编程简介之三:Snmp
  14. html动画人物走路,动画人物走路教程
  15. (转载)html在浏览器中的差异
  16. 如何在eclipse中导入Java项目文件包(方法截图详细步骤)
  17. 铝电解电容和钽电容区别
  18. html怎么搞一个微信图标,怎样在微信名字添加图标和微信名字里怎么加表情?什么系统都可以...
  19. Python笔记: 执行run.py文件
  20. 手机系统更新(提示已是最新版本),怎么升级更新

热门文章

  1. 关于粒子群惯性权重的描述
  2. 软件设计师笔记之数据流图
  3. 【目标定位】基于matlab扩展卡尔曼滤波器多机器人定位【含Matlab源码 2327期】
  4. 2大学英语四级关于计算机的图表作文,英语四级图表作文模板(精选8篇)
  5. i5 10500h 和i7 9750h 哪个好
  6. vulnhub-durian
  7. 完美假期第一步:用Python寻找最便宜的航班!
  8. 购买三星S5830历程
  9. 已知一点经纬度,如何得到该点的高程
  10. 存疑598A得根据小数点分很多情况