当前位置: 首页 > news >正文

DAY 22 复习日kaggle泰坦里克号人员生还预测

复习日

仔细回顾一下之前21天的内容,没跟上进度的同学补一下进度。

作业:

自行学习参考如何使用kaggle平台写下使用注意点,并对下述比赛提交代码

kaggle泰坦里克号人员生还预测

输入

import pandas as pd
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from sklearn.preprocessing import LabelEncoder
from sklearn.impute import SimpleImputer  # 添加这行导入
from sklearn.preprocessing import StandardScaler
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import GridSearchCV
from sklearn.ensemble import GradientBoostingClassifier
# 加载数据集# 加载数据集
train_data = pd.read_csv(r'titanic/train.csv')
test_data = pd.read_csv(r'titanic/test.csv')# 数据预处理优化
# 删除无关特征(保留原始注释)
train_data = train_data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1)
test_data = test_data.drop(['PassengerId', 'Name', 'Ticket', 'Cabin'], axis=1)# 修正缺失值处理流程
missing_cols = {
    'str': ['Embarked', 'Sex'],
    'num': ['Age', 'Fare']
}# 统一使用训练集的统计量进行填充
imputer = {
    'str': SimpleImputer(strategy='most_frequent').fit(train_data[missing_cols['str']]),
    'num': SimpleImputer(strategy='median').fit(train_data[missing_cols['num']])
}# 应用填充
train_data[missing_cols['str']] = imputer['str'].transform(train_data[missing_cols['str']])
test_data[missing_cols['str']] = imputer['str'].transform(test_data[missing_cols['str']])
train_data[missing_cols['num']] = imputer['num'].transform(train_data[missing_cols['num']])
test_data[missing_cols['num']] = imputer['num'].transform(test_data[missing_cols['num']])# 特征编码优化
train_data = pd.get_dummies(train_data, columns=['Sex', 'Embarked'], drop_first=True)
# 确保测试集与训练集列对齐
test_data = pd.get_dummies(test_data, columns=['Sex', 'Embarked'], drop_first=True)
test_data = test_data.reindex(columns=train_data.columns.drop('Survived'), fill_value=0)# 划分数据集(添加随机种子)
X = train_data.drop('Survived', axis=1)
y = train_data['Survived']
X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)# 移除特征缩放(树模型不需要)
# 新增参数调优
param_grid = {
    'n_estimators': [100, 200],
    'max_depth': [None, 5, 10],
    'class_weight': [None, 'balanced']
}rf = RandomForestClassifier(random_state=42)
grid_search = GridSearchCV(rf, param_grid, cv=5, scoring='accuracy')
grid_search.fit(X_train, y_train)best_model = grid_search.best_estimator_
val_pred = best_model.predict(X_val)
from sklearn.metrics import accuracy_score, roc_auc_score  # 添加ROC AUC指标
# 增强模型评估
print(f"\n最佳参数: {grid_search.best_params_}")
print("验证集准确率:", accuracy_score(y_val, val_pred))
print("AUC分数:", roc_auc_score(y_val, best_model.predict_proba(X_val)[:, 1]))
print("特征重要性:")
for name, importance in zip(X.columns, best_model.feature_importances_):
    print(f"{name}: {importance:.3f}")# 原导入部分保持不变,添加以下内容# 预测并保存结果
test_pred = best_model.predict(test_data)
output = pd.DataFrame({'PassengerId': range(892, 1310), 'Survived': test_pred})
output.to_csv('submission.csv', index=False)
print("预测结果已保存为 submission.csv")

输出

最佳参数: {'class_weight': None, 'max_depth': 5, 'n_estimators': 200}
验证集准确率: 0.7932960893854749
AUC分数: 0.8412384716732543
特征重要性:
Pclass: 0.141
Age: 0.118
SibSp: 0.047
Parch: 0.037
Fare: 0.180
Sex_male: 0.438
Embarked_Q: 0.012
Embarked_S: 0.028
预测结果已保存为 submission.csv

相关文章:

DAY 22 复习日kaggle泰坦里克号人员生还预测

复习日 仔细回顾一下之前21天的内容,没跟上进度的同学补一下进度。 作业: 自行学习参考如何使用kaggle平台,写下使用注意点,并对下述比赛提交代码 kaggle泰坦里克号人员生还预测 输入: import pandas as pd from sklea…...

SpringCloud Gateway知识点整理和全局过滤器实现

predicate(断言): 判断uri是否符合规则 • 最常用的的就是PathPredicate,以下列子就是只有url中有user前缀的才能被gateway识别,否则它不会进行路由转发 routes:- id: ***# uri: lb://starry-sky-upmsuri: http://localhost:9003/predicate…...

婴幼儿托育实训室师资协同培养模式

随着社会对婴幼儿托育服务需求的日益增长,培养适应市场需求的高素质托育人才成为当务之急。产教融合作为一种有效的人才培养模式,对于婴幼儿托育实训室建设具有重要意义,能够有效整合学校和企业的资源,为婴幼儿托育实训室人才培养…...

Gartner 《2025大数据管理规划指南》学习心得

概要 本研究旨在为数据和分析(D&A)技术专业人员提供2025年的数据管理规划指导,帮助他们应对最新数据管理趋势,以增强决策制定并实现卓越的业务成果。强调了持续适应数据管理实践的组织将更有能力做好人工智能(AI&…...

理解反向Shell:隐藏在合法流量中的威胁

引言 在网络安全领域,​​反向Shell(Reverse Shell)​​ 是一种隐蔽且危险的攻击技术,常被渗透测试人员和攻击者用于绕过防火墙限制,获取对目标设备的远程控制权限。与传统的“正向Shell”(攻击者主动连接…...

《AI大模型应知应会100篇》第55篇:大模型本地开发环境搭建

第55篇:大模型本地开发环境搭建 ——从零开始构建你的AI炼金炉 📌 摘要 在人工智能尤其是大模型(LLM)领域,一个高效、稳定、可扩展的本地开发环境是每位开发者的第一块基石。本文将手把手带你完成从硬件选型到软件配…...

AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月11日第74弹

从今天开始,咱们还是暂时基于旧的模型进行预测,好了,废话不多说,按照老办法,重点8-9码定位,配合三胆下1或下2,杀1-2个和尾,再杀6-8个和值,可以做到100-300注左右。 (1)定…...

Docker:安装配置教程(最新版本)

文章目录 一、前言二、具体操作2.1 卸载 Docker (可选)2.2 重新安装(使用清华大学镜像)2.3 配置轩辕镜像加速2.4 Docker 基本命名2.5 测试是否成功 三、结语 一、前言 Docker 是一种容器化技术,在软件开发和部署中得到广泛的应用&#xff0c…...

数据结构【二叉树的遍历实现】

📘考研数据结构基础:二叉树的存储、遍历与队列辅助实现详 在数据结构的学习中,二叉树作为一种结构清晰、应用广泛的树形结构,是考研计算机专业课中重点内容之一。本文将以实际代码为基础,介绍二叉树的存储结构、遍历方…...

稳态电路和瞬态电路

一、概述 稳态电路是指电路在长时间运行后达到的一种稳定状态; 瞬态电路是指电路在切换或者初始化节点经历过渡的过程。 在电路分析中,稳态和瞬态是动态电路的两个阶段。在电路中,如果有电感或者电容时, 他们的电压和电流不能瞬间…...

spark运行架构及核心组件介绍

目录 1. Spark 的运行架构1.1 Driver1.2 Executor1.3 Cluster Manager1.4 工作流程 2. Spark 的核心组件2.1 Spark Core2.2 Spark SQL2.3 Spark Streaming2.4 MLlib2.5 GraphX 3. Spark 架构图4. Spark 的优势4.1 高性能4.2 易用性4.3 扩展性4.4 容错性 5. 总结 1. Spark 的运行…...

Linux服务器常用运维工具/命令

常用工具/命令 1、查看内存使用 free -m上述命令用于显示系统中内存的使用情况,并将内存使用量以兆字节(MB)为单位显示。这个命令在 Linux 和类 Unix 系统上非常常见,是监视系统内存的一个简单而有用的工具。 具体而言&#xf…...

KaiwuDB 2.0:为 AIoT 而生,融合时序、关系与 AI 的未来数据库

目录: 引言:AIoT 数据洪流下的数据库“窘境”KaiwuDB 2.0:为 AIoT “量身定制”的智能数据基座核心利器:多模融合 + 原生 AI,解锁数据新范式不止于云:KaiwuDB Lite 轻装上阵边缘计算硬核实力:AIoT 场景下的显著优势技术基因:融合创新,构筑未来数据架构应用蓝图:深耕 A…...

Python打卡训练营Day22

浙大疏锦行 DAY 22 复习日 复习日 仔细回顾一下之前21天的内容,没跟上进度的同学补一下进度。 作业: 自行学习参考如何使用kaggle平台,写下使用注意点,并对下述比赛提交代码 kaggle 一、Kaggle 核心功能学习参考 注册与基础设置…...

Oracle — 内置函数

介绍 Oracle内置函数是数据库中预定义的编程工具,用于简化数据处理与计算逻辑。这些函数分为单行函数和聚合函数两大类。单行函数针对每条数据独立运算,例如LOWER函数转换文本为小写,ROUND实现数值四舍五入,TO_CHAR格式化日期输出…...

Kubernetes基础(三十二):Worker节点启动全解析

Worker节点是Kubernetes集群的"肌肉",负责实际运行业务负载。本文将深入剖析Worker节点的完整启动流程,并揭秘生产环境中的关键优化点。 一、启动流程全景图 二、核心启动阶段详解 1. 系统初始化(0-30秒) 关键任务&a…...

“爱生活”小项目问题总结

目录 爱生活小程序 1.用户登录和注册模块遇到的问题 1.1在使用密码加密时,注册新用户,客户端响应401的问题 原因: 正确操作: 1.2在设置密码加密后,发送post登录请求,服务器出现报错java.lang.reflect.…...

实战项目5(08)

目录 任务场景一 【r1配置】 【r2配置】 【r3配置】 ​​​​​​​任务场景二 【r1配置】 【r2配置】 ​​​​​​​任务场景一 按照下图完成网络拓扑搭建和配置 任务要求: 通过在路由器R1、R2和R3上配置静态路由,实现网络中各终端PC能够正常…...

LeetCode 1550.存在连续三个奇数的数组:遍历

【LetMeFly】1550.存在连续三个奇数的数组:遍历 力扣题目链接:https://leetcode.cn/problems/three-consecutive-odds/ 给你一个整数数组 arr,请你判断数组中是否存在连续三个元素都是奇数的情况:如果存在,请返回 tr…...

大模型在肾肿瘤诊疗全流程预测及方案制定中的应用研究

目录 一、引言 1.1 研究背景与意义 1.2 研究目的 1.3 研究创新点 1.4 研究方法与数据来源 二、肾肿瘤概述与大模型技术 2.1 肾肿瘤相关知识 2.1.1 定义、分类及症状 2.1.2 发病机制与影响因素 2.1.3 治疗现状与挑战 2.2 大模型技术原理及医疗应用现状 2.2.1 大模型…...

5月11号.

导入Maven项目: Maven依赖管理: 生命周期: 测试: 断言: Junit常见注解:...

数据库基础概述

一、基础概述 1.数据库 (1)概述 数据库就是存储数据的仓库,其本质是一个文件系统,按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作使用数据库可以高效的…...

Hibernate 性能优化:告别慢查询,提升数据库访问性能

Hibernate 性能优化:告别慢查询,提升数据库访问性能 Hibernate 作为一款流行的 ORM 框架,极大地简化了 Java 应用程序与数据库之间的交互,但如果不进行合理优化,性能瓶颈在高并发场景下就会暴露无遗。本文将深入探讨 …...

【JavaWeb+后端常用部件】

回顾内容看: 一、获取请求参数的方法 参考:[JavaWeb]——获取请求参数的方式(全面!!!)_java 获取请求参数-CSDN博客 Json格式的Body加备注RequestBody{id}动态路径加备注PathVariableid?&name?直接接收就好 i…...

Playwright 简介

Playwright 简介 说明:本教程基于 @playwright/test@1.51.1 版本编写,内容和目录结构与该版本官方推荐保持一致。 适合人群与学习路径 适合谁? 想入门自动化测试的测试工程师需要跨浏览器、移动端自动化的开发者希望提升测试效率、减少维护成本的团队学习建议 跟着文档动手实…...

# 2-STM32-复位和时钟控制RCC

STM32-复位和时钟控制RCC 2-STM32-复位和时钟控制RCC摘要说明本文参考资料如下: 一、STM32最小系统回顾STM32F103C8T6核心板原理图 二、复位三、时钟3.1 时钟树3.2 STM32启动过程3.2 SystemInit()函数3.2.1 SystemInit()第1句:3.2.2 SystemInit()第2句&a…...

idea中的vcs不见了,如何解决

按如下顺序依次找 filesettingsversion controldirectory mappings点击号vcs 改为Subversion 省流:看如下图...

元数据分类

元数据(Metadata)是描述数据的数据,通常分为 业务元数据、技术元数据 和 操作元数据。这三类元数据从不同维度对数据进行描述和管理,以下是它们的定义、作用和示例: 1. 业务元数据(Business Metadata&#…...

【C语言】(9)—指针3

文章目录 一、字符指针的深入理解二、数组指针详解三、二维数组传参的本质四、函数指针及其应用五、函数指针数组与转移表 一、字符指针的深入理解 1.1 字符指针的基本使用 字符指针(char*)是指向字符类型数据的指针,它有两种常见的使用方式: // 方式一…...

拍电影为什么常用绿幕?认识色度键控(Chroma Key)技术

许多电影拍摄使用绿幕技术,其核心原因在于它通过色度键控(Chroma Key)技术实现背景替换,从而为创作提供高度灵活性、成本效益和视觉效果的可控性。以下从技术原理、应用场景、优势及与其他技术的对比等方面展开分析: 一、绿幕技术的基本原理 绿幕技术的核心是色度键控(C…...

【iOS】Tagged Pointer

【iOS】Tagged Pointer 文章目录 【iOS】Tagged Pointer前言认识Tagged Pointer使用案例结构isa指针经典面试题 前言 在之前的学习中笔者在字符串章节简单了解过这个Tagged Pointer后面笔者就没在多了解这部分内容,今天决定比较系统的学习一下有关于这部分内容的知识. 认识Tagg…...

17.【.NET 8 实战--孢子记账--从单体到微服务--转向微服务】--微服务基础工具与技术--loki

在微服务中,日志是非常重要的组成部分。它不仅可以帮助我们排查问题,还可以帮助我们分析系统的性能和使用情况。 一、loki简介 loki是一个开源的日志聚合系统,它可以帮助我们高效地收集、存储和分析日志数据。loki的设计理念是“简单、快速…...

OpenWrt开发第8篇:树莓派开发板做无线接入点

文/指尖动听知识库-谷谷 文章为付费内容,商业行为,禁止私自转载及抄袭,违者必究!!! 文章专栏:Openwrt开发-基于Raspberry Pi 4B开发板 树莓派开发板作为无线接入点的时候,可以通过电脑和手机打开WiFi功能搜索到相应打开的WiFi; 1 通过Web操作界面开启wifi 1...

电源架构与太阳能充电器电路设计分析

一、电源架构基本工作原理分析 #mermaid-svg-mEaBEAY5xdCMN9Uy {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-mEaBEAY5xdCMN9Uy .error-icon{fill:#552222;}#mermaid-svg-mEaBEAY5xdCMN9Uy .error-text{fill:#5522…...

英语句型结构

句型类型结构示例示例解释应用场合简单句主谓(SV)The bird flies.“The bird” 是主语,“flies” 是不及物动词作谓语,描述鸟 “飞” 的动作。描述事物基本行为,如动物习性、自然现象等。主谓宾(SVO&#x…...

什么是卷积神经网络

卷积神经网络(CNN)的全面解析 卷积神经网络(Convolutional Neural Network, CNN)是深度学习领域最成功的模型之一,尤其在图像处理和模式识别任务中表现卓越。以下从基本结构、核心组件、发展历程、应用场景、数学基础、训练方法及优缺点等方面展开详述。 一、基本定义与核…...

操作系统: 第三章节 :中断和处理机调度

一:中断与中断系统 -1:中断的概念: 在程序运行过程中出现某紧急事件,必须中止当前正在运行的程序,转去处理这个事件,然后再恢复原来运行的程序,这一过程称为中断. -2:中断装置(硬件): 发现并相应中断的硬件结构: 工作: -----…...

嵌入式硬件篇---IIC

文章目录 前言1. IC协议基础1.1 物理层特性两根信号线SCLSDA支持多主多从 标准模式电平 1.2 通信流程起始条件(Start Condition)从机地址(Slave Address)应答(ACK/NACK)数据传输:停止条件&#…...

SAP学习笔记 - 开发08 - Eclipse连接到 BTP Cockpit实例

有关BTP,之前学了一点儿,今天继续学习。 SAP学习笔记 - 开发02 - BTP实操流程(账号注册,BTP控制台,BTP集成开发环境搭建)_sap btp开发-CSDN博客 如何在Eclipse中连接BTP Cockpit开发环境实例。 1&#xf…...

安装typescript时,npm install -g typescript报错

删除C:\Users\用户\下的.npmrc文件,如果你的没有,看是不是因为将隐藏的项目勾选上了,然后去掉勾选。 重新输入...

支持selenium的chrome driver更新到136.0.7103.92

最近chrome释放新版本:136.0.7103.92 如果运行selenium自动化测试出现以下问题,是需要升级chromedriver才可以解决的。 selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only su…...

Java在人工智能中的应用:机器学习与深度学习技术探讨

根据您提供的知识库内容,我发现其中主要涉及机器学习和深度学习的内容,而您的文章是关于Java面试技术的。两者的主题并不直接相关,因此无法直接使用知识库中的信息来润色您的文章。 如果您希望将机器学习和深度学习的内容融入文章中&#xf…...

C++23 新特性:深入解析 std::views::join_with(P2441R2)

文章目录 std::views::join_with 基本用法处理字符串集合std::views::join_with 与其他视图的结合使用总结 随着C23标准的逐步推进,我们迎来了许多令人兴奋的新特性,其中之一就是 std::views::join_with。这个新特性是C23中引入的视图适配器&#xff0c…...

【工作记录】crmeb后端项目打开、运行

1、下载代码 1)安装git 不再详述 2)git拉代码 项目地址如下,在vscode-分支中拉代码 # 克隆项目 git clone https://gitee.com/ZhongBangKeJi/crmeb_java/ 截图如下是已经成功拉下来 注意安装对应版本 2、maven配置 安装配置见&#x…...

前端浏览器判断设备类型的方法

前端浏览器判断设备类型的方法 在前端开发中,判断设备类型(如手机、平板、桌面电脑)有多种方法,以下是常用的几种方式: 1. 使用 User Agent 检测 通过 navigator.userAgent 获取用户代理字符串进行判断:…...

python 新闻 api + react js 客户端。

1. 起因, 目的: 前面写了几个爬虫。 那么这些数据怎么使用。使用 api , 看看到底有哪些新闻。感受:最初只是一个想法,然而实现的过程中却很枯燥乏味, 甚至怀疑为什么要做这个事情. 2. 先看效果 效果就是能行。 3.…...

Vivado中可新建的工程类型解析

以下是Vivado中可新建的工程类型解析,按用途和场景分类说明: 1. RTL Project(RTL工程) 用途:从零开始基于RTL代码(Verilog/VHDL)设计FPGA逻辑,覆盖完整开发流程。适用阶段&#xff…...

TypeScript 中的泛型工具详解

TypeScript 提供了一系列强大的泛型工具类型&#xff0c;可以帮助我们更灵活地操作和转换类型。以下是主要的泛型工具类型及其用法&#xff1a; 1. 基础工具类型 1.1. Partial<T> 将类型 T 的所有属性变为可选。 interface User {name: string;age: number; }type Pa…...

OpenCV进阶操作:指纹验证、识别

文章目录 前言一、指纹验证1、什么是指纹验证2、流程步骤 二、使用步骤&#xff08;案例&#xff09;三、指纹识别&#xff08;案例&#xff09;1、这是我们要识别的指纹库2、这是待识别的指纹图3、代码4、结果 总结 前言 指纹识别作为生物识别领域的核心技术之一&#xff0c;…...

js前端分片传输大文件+mongoose后端解析

最近一直在完善mongoose做webserver的项目&#xff0c;其中程序升级要通过前端传输升级包到服务器。 因为第一次写前端代码&#xff0c;分片传输的逻辑&#xff0c;网上一堆&#xff0c;大同小异&#xff0c;而且版本啊&#xff0c;API不一致的问题&#xff0c;导致头疼的很。后…...