Kaggle竞赛之Titanic存活预测2

  • 提高代码规范性,基于上一个 baseline 的提高
import pandas as pd
from sklearn.preprocessing import LabelBinarizer
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split#数据划分方法
from sklearn.ensemble import RandomForestClassifier#随机森林
from sklearn.model_selection import GridSearchCV #网格交叉搜索交叉验证# data = pd.read_csv("file_path")打印出来看def data_clean(file_path):""""数据处理函数parameters:file_path:数据文件路径""""data = pd.read_csv(file_path)#删除不需要的列data.drop("PassengerId",axis=1,inplace=True)data.drop(["Name","Ticket","Cabin"],axis=1,inplace=True)#对空值进行填充data["Age"].fillna(data["Age"].mean(),inplace=True)#对字符的东西进行一个空值填充data["Embarked"].fillna(data["Embarked"].mode[0],inplace=True)#数据preprocessingdata["Sex"]=LabelBinarizer().fit_transform(data["Sex"])data = pd.get_dummied(data)#缩放,减少计算量data["Fare"] = StandardScaler().fit_transform(data["Fare"].values.reshape(-1,1))return (data)# 数据划分
def data_split(data):""""数据划分函数parameters:data:要划分的数据""""x = data.drop(["Survived"],axis=1)y = data["Survived"]x_train,x_test,y_train,y_test = train_test.split(x,y,test_size=0.2)return (x_train,x_test,y_train,y_test)# 模型搭建
def model_fit(x,y):"""模型训练函数parameters:x:特征y:标签"""#定义好参数Para_grid = [{"n_estimators":[3,10,30],"max_features":[2,4,6,8]},{"bootstrap",[False],"n_estimators":[3,10],"max_features":[2,4,6]}]#模型实例化model = RandomForestClassifier()#模型和交叉验证次数gird_search = GridSearchCV(model,Para_grid,cv=5)#模型训练grid_search.fit(x,y)return(grid_search.best_params_,grid_search.best_estimator_)data = data_clean("data/train.csv")
x_train,x_test,y_train,y_test = data_split(data)
model_fit(x_train,y_train)
# 上一行得到最优的模型和参数
model = RandomForestClassifier(n_estimators=30,max_features=2,max_depth=100)
model.fit(x_train,y_train)
model.score(x_test,y_test)#程序入口
if __name__ == '__main__':ABC
  • 模型融合,去 sklearn 看一下就懂
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/714699.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

哪个超声波清洗机品牌值得入手?销量榜品牌值得选购!

在科技日益发展的今天,超声波清洗技术以其高效、便捷和深度清洁的特点,已经深入到生活的诸多领域,从精密仪器到珠宝首饰,从眼镜框到假牙,甚至是厨房用品的日常护理,都能见到超声波清洗机的身影。面对市场上…

无人机两次飞行的图像数据配准与几何校正方法研究

标题: 无人机两次飞行的图像数据配准与几何校正方法研究 摘要: 本文研究了利用无人机获取的两次飞行的图像数据进行配准与几何校正的方法。无人机航拍技术在地理信息获取和空间数据应用中具有重要意义,但由于飞行条件、摄影设备和环境等因素的影响,同一区域的不同飞行任务…

【基频提取算法-YIN】

本文对基频提取算法 YIN 做以介绍。如有表述不当之处欢迎批评指正。欢迎任何形式的转载,但请务必注明出处。 文章目录 1. 引言2. YIN 各模块代码讲解2.1. 差分函数的实现2.2. 累积均值归一化差分函数的实现2.3. 绝对阈值2.4. 抛物线插值2.5. 最优局部估计 3. 总结 1…

免杀实战-EDR对抗

文章目录 杀软分析BOF.NET 杀软分析 x64dgb简单调试发现该edr在r3环对ntdll.dll和kernel32.dll关键函数均存在hook,这里硬盘读取原来的dll进行重新加载,原理如图 loader // dllmain.cpp : 定义 DLL 应用程序的入口点。 #include "pch.h" #in…

DSI2协议之BTA行为理解

概念: DSI协议spec支持总线控制权在master和slave之间发生交换,即通过bus turn around来实现; BUS TURN AROUND: BTA 的实现是通过controller—>cdphy的turnrequest信号来实现; 关于控制器发出turnrequest给phy,phy通过lvds/trio线输出turnaround sequence如下图中…

LeetCode刷题笔记之二叉树(四)

一、二叉搜索树的应用 1. 700【二叉搜索树中的搜索】 题目: 给定二叉搜索树(BST)的根节点 root 和一个整数值 val。你需要在 BST 中找到节点值等于 val 的节点。 返回以该节点为根的子树。 如果节点不存在,则返回 null 。代码&a…

BUGKU 本地管理员

打开环境,先F12查看看到一串代码。Base64解码一下,得到的应该是密码,然后输入admin | test123试一下 使用BP抓包,修改XFF,得到flag

将镜像上传到私有镜像仓库Harbor

首先你需要安装Harbor服务: https://blog.csdn.net/qq_50247813/article/details/136388229 客户端已经安装docker: https://docs.docker.com/engine/install/centos/ 在docker客户端登录 Harbor 我的Harbor 服务器地址: 192.168.44.161 账号…

关于编写测试用例的一些思考

测试用例是QA同学的基本功,每个人都有一套编写测试用例的体系,本文是作者结合自身的工作经验以及阅读一些测试相关的书籍后的一些看法,欢迎大家一起讨论学习。 测试设计 测试用例格式 面试中一些常见的问题 1.APP测试与服务端测试的区别&am…

微服务中的Feign:优雅实现远程调用的秘密武器(二)

本系列文章简介: 本系列文章将深入探讨Feign的特点、原理以及在微服务中的应用场景,帮助读者更好地理解和使用这个优秀的远程调用工具。无论您是初学者还是有经验的开发人员,本文都将为您揭示Feign的秘密,并带您一起走进微服务的世…

何恺明新作 l-DAE:解构扩散模型

何恺明新作 l-DAE:解构扩散模型 提出背景扩散模型步骤如何在不影响数据表征能力的同时简化模型?如何进一步推动模型向经典DAE靠拢?如何去除对生成任务设计的DDM中不适用于自监督学习的部分?如何改进DDM以专注于清晰图像表示的学习…

2024华为软件测试笔试面试真题,抓紧收藏不然就看不到了

一、选择题 1、对计算机软件和硬件资源进行管理和控制的软件是(D) A.文件管理程序 B.输入输出管理程序 C.命令出来程序 D.操作系统 2、在没有需求文档和产品说明书的情况下只有哪一种测试方法可以进行的(A) A.错误推测法测试…

Docker 快速入门实操教程(完结)

Docker 快速入门实操教程(完结) Docker,启动! 如果安装好Docker不知道怎么使用,不理解各个名词的概念,不太了解各个功能的用途,这篇文章应该会对你有帮助。 前置条件:已经安装Doc…

【Hadoop】在spark读取clickhouse中数据

读取clickhouse数据库数据 import scala.collection.mutable.ArrayBuffer import java.util.Properties import org.apache.spark.sql.SaveMode import org.apache.spark.sql.SparkSessiondef getCKJdbcProperties(batchSize: String "100000",socketTimeout: Strin…

IOS 发布遇到“Unable to authenticate with App Store Connect”错误咋解决?

问题: 在开发ios app后,先发布adhoc版本,测试通过后,再发布testflight版本测试,但是可能会遇到一下问题。 解决办法: 在Signing &Capabilities中,在ios下边要指定有发布权限的Team账号&a…

PAT (Basic Level) Practice | 判断题

判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。 输入格式 输入在第一行给出两个不超过 100 的正整数 N 和 M,分别是学生人数和判断题数量。第二行给出 M 个不超过 5 的正整数,是每道题的满分值。第…

pytorch基础2-数据集与归一化

专题链接:https://blog.csdn.net/qq_33345365/category_12591348.html 本教程翻译自微软教程:https://learn.microsoft.com/en-us/training/paths/pytorch-fundamentals/ 初次编辑:2024/3/2;最后编辑:2024/3/2 本教程…

迪杰斯特拉算法的具体应用

fill与memset的区别介绍 例一 #include <iostream> #include <algorithm> using namespace std; const int maxn500; const int INF1000000000; bool isin[maxn]{false}; int G[maxn][maxn]; int path[maxn],rescue[maxn],num[maxn]; int weight[maxn]; int cityn…

【深度学习数学基础】Hebbian图(Hebbian Graph)

Hebbian图&#xff08;Hebbian Graph&#xff09;是一种基于神经科学原理的网络结构&#xff0c;它受到唐纳德赫布&#xff08;Donald Hebb&#xff09;提出的赫布学习规则&#xff08;Hebb’s rule&#xff09;的启发。赫布学习规则是神经科学中描述神经元之间突触连接如何通过…

模板方法模式 详解 设计模式

模板方法模式 模板方法模式是一种行为型设计模式&#xff0c;它定义了一个算法的骨架&#xff0c;将一些步骤延迟到子类中实现。这种模式允许子类在不改变算法结构的情况下重新定义算法的某些步骤。 结构 抽象类&#xff08;Abstract Class&#xff09;&#xff1a;负责给出一…