AI人工智能之机器学习sklearn-数据预处理和划分数据集

1、概要

  本篇学习AI人工智能之机器学习sklearn数据预处理和划分数据集,从代码层面讲述如何进行数据的预处理和数据集划分。

2、简介

本片讲述数据预处理的标准化处理、归一化处理,以常用的两个类为例

  • 标准化处理类 StandardScaler
  • 归一化处理类 MinMaxScaler

在数据处理方面,使用train_test_split函数处理列表数据集为例

3、 数据预处理和数据集划分

3.1 安装依赖

python安装机器学习库: pip install scikit-learn

3.2、定义数据集
from sklearn.feature_extraction import text, DictVectorizer
from sklearn.preprocessing import StandardScaler, MinMaxScaler
from sklearn.model_selection import train_test_split# 示例数据集合,是一个经过处理的列表数据  X
X = [[1, 2], [3, 4], [5, 6], [7, 8]]
print("data:", X)# 示例打标的数据,
y = [0, 1, 0, 1]
print("tag", y)

运行上述代码,您将得到如下输出:

data: [[1, 2], [3, 4], [5, 6], [7, 8]]
tag [0, 1, 0, 1]
3.3 数据预处理 StandardScaler、MinMaxScaler
# 标准化处理
ss = StandardScaler()
# 将特征缩放到零均值和单位方差
X = ss.fit_transform(X)
X

运行上述代码,您将得到如下输出:

array([[-1.34164079, -1.34164079],[-0.4472136 , -0.4472136 ],[ 0.4472136 ,  0.4472136 ],[ 1.34164079,  1.34164079]])
# 归一化处理
mms = MinMaxScaler()
# 将特征缩放到一个范围(如[0,1])
X = mms.fit_transform(X) 
X

运行上述代码,您将得到如下输出:

array([[0.        , 0.        ],[0.33333333, 0.33333333],[0.66666667, 0.66666667],[1.        , 1.        ]])
3.4 划分数据集 train_test_split
# 划分训练集 _train, 测试集 _test
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)
print(f"训练集: {X_train} - {y_train}")
print(f"测试集: {X_test} - {y_test}")

运行上述代码,您将得到如下输出:

训练集: [[1.         1.        ][0.         0.        ][0.66666667 0.66666667]] - [1, 0, 0]
测试集: [[0.33333333 0.33333333]] - [1]

4、 总结

本篇以自定义数据集为例,从代码视角讲述如何对数据集进行预处理和数据集的划分。

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

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

相关文章

智能硬件-01智能停车场

行业背景 随着现代人们生活水平的提高,私家车辆在不断增加,小区将面临着临时车用户要多于固定车用户的窘境,尤其是在早晚高峰时段车辆出入拥堵,对小区的车辆管理难度越来越大,对停车场收费员的岗位要求越来越高&#…

定长内存池的实现、测试及错误分析

背景 C/C 申请内存使用的是 malloc ,malloc 其实就是一个大众货,什么场景下都可以用,但是什么场景下都可以用就意味着什么场景下都不会有很高的性能。 定长内存池解决固定大小的内存申请释放需求, 性能达到极致,不考…

vue3 下载文件 responseType-blob 或者 a标签

在 Vue 3 中,你可以使用 axios 或 fetch 来下载文件,并将 responseType 设置为 blob 以处理二进制数据。以下是一个使用 axios 的示例: 使用 axios 下载文件 首先,确保你已经安装了 axios: npm install axios然后在你…

Search API:让数据获取变得简单高效的搜索引擎代理商

Search API:让数据获取变得简单高效的搜索引擎代理商 在当今数字化时代,数据驱动的决策变得越来越重要,而获取精准、实时的数据是众多企业、研究机构和开发者的核心需求。然而,直接爬取搜索引擎或行业资讯网站可能会遇到诸多挑战&…

halcon三维对象处理例程总结(二)

目录 一、intersect_plane_object_model_3d二、interactive_intersection三、measure_plant四、moments_object_model_3d五、projective_trans_object_model_3d六、read_object_model_3d_generic_ascii一、intersect_plane_object_model_3d 计算三维物体模型与平面之间的相交部…

基于 Python 的项目管理系统开发

基于 Python 的项目管理系统开发 一、引言 在当今快节奏的工作环境中,有效的项目管理对于项目的成功至关重要。借助信息技术手段开发项目管理系统,能够显著提升项目管理的效率和质量。Python 作为一种功能强大、易于学习且具有丰富库支持的编程语言&…

2月24(信息差)

🌍“任意舞蹈任意学”!宇树机器人又进化了 传Meta有意合作抛出橄榄枝 🎄两部门:深入推进公路沿线充电基础设施建设 推动大功率充电技术标准应用 ✨小米15 Ultra、小米SU7 Ultra定档2月27日 雷军宣布:向超高端进发 1.…

mysql 迁移到人大金仓数据库

我是在windows上安装了客户端工具 运行数据库迁移工具 打开 在浏览器输入http://localhost:54523/ 账号密码都是kingbase 添加mysql源数据库连接 添加人大金仓目标数据库 添加好的两个数据库连接 新建迁移任务 选择数据库 全选 迁移中 如果整体迁移不过去可以单个单个或者几个…

C++和OpenGL实现3D游戏编程【连载23】——几何着色器和法线可视化

欢迎来到zhooyu的C++和OpenGL游戏专栏,专栏连载的所有精彩内容目录详见下边链接: 🔥C++和OpenGL实现3D游戏编程【总览】 1、本节实现的内容 上一节课,我们在Blend软件中导出经纬球模型时,遇到了经纬球法线导致我们在游戏中模型光照显示问题,我们在Blender软件中可以通过…

JUC并发—12.ThreadLocal源码分析

大纲 1.ThreadLocal的特点介绍 2.ThreadLocal的使用案例 3.ThreadLocal的内部结构 4.ThreadLocal的核心方法源码 5.ThreadLocalMap的核心方法源码 6.ThreadLocalMap的原理总结 1.ThreadLocal的特点介绍 (1)ThreadLocal的注释说明 (2)ThreadLocal的常用方法 (3)ThreadL…

Deepseek和Grok 3对比:写一段冒泡排序

1、这是访问Grok 3得到的结果 2、grok3输出的完整代码: def bubble_sort(arr):n len(arr) # 获取数组长度# 外层循环控制排序轮数for i in range(n):# 内层循环比较相邻元素,j的范围逐渐减少for j in range(0, n - i - 1):# 如果当前元素大于下一个元…

Java-01-源码篇-04集合-05-ConcurrentHashMap(1)

1.1 加载因子 加载因子(Load Factor)是用来决定什么时候需要扩容的一个参数。具体来说,加载因子 当前元素数量 / 桶的数量,当某个桶的元素个数超过了 桶的数量 加载因子 时,就会触发扩容。 我们都知道 ConcurrentHas…

vue3: directive自定义指令防止重复点击

第一章 前言 相信很多小伙伴会在各个渠道上搜如何防止重复点击,之后会推荐什么防抖、节流来避免这一操作,该方法小编就不继续往下说了。接下来说说小编的场景,项目已经完成的差不多了,但是由于之前大家都是直接点击事件调用方法的…

忽略Git文件的修改,让它不被提交

使用Git托管的工程中,经常有这样的需求,希望文件只是本地修改,不提交到服务端。 如果仅仅是本地存在的文件,我们可以通过.gitignore配置避免文件被提交。 有的时候文件是由git托管的,但是我们希望只在本地修改&#…

Zap:Go 的高性能日志库

文章目录 Zap:Go 高性能日志库一、Zap 的核心优势二、快速入门 Zap1. 安装2. 基本用法输出示例 三、Logger 与 SugaredLogger:如何选择?1. **Logger(高性能模式)**2. **SugaredLogger(开发友好模式&#xf…

每日一题——顺时针旋转矩阵

顺时针旋转矩阵 目录 一、问题描述二、解题思路 1. 原地旋转矩阵2. 旋转逻辑3. 代码实现 三、代码解析 1. 参数说明2. 原地旋转逻辑3. 返回矩阵 四、示例测试代码五、复杂度分析 1. 时间复杂度2. 空间复杂度 一、问题描述 以下是内容转换为 CSDN 的 Markdown 格式&#xf…

接雨水的算法

题目 代码 # 接雨水算法 def trap(height):# 1. 特殊情况:数组为空 则返回0if not height:return 0n len(height)# 2. 初始化左右指针,左右最大值,结果left, right 0, n - 1# maxleft代表左边最大值,maxright代表右边最大值max…

会话对象 HttpSession 二、HttpSession失效

session失效有如下几个原因&#xff1a; session.invalidate()方法注销sessionsession超时 <session-config><!-- session的超时时间&#xff0c;以分钟为单位 --><session-timeout>1</session-timeout> </session-config>Cookie被禁用

Jenkins 创建 Node 到 Windows

Jenkins 创建 Node 到 Windows 一. 新建 Node Dashboard -> Manage Jenkins -> Manage Nodes and Clouds Dashboard -> Nodes -> New Node 二. 配置节点 Node&#xff1a;节点名 Description&#xff1a;节点描述 Number of executors&#xff1a;节点最大同…

Opengl常用缓冲对象功能介绍及使用示例(C++实现)

本文整理了常用的opengl缓冲区对象并安排了使用示例 名称英文全称作用简述顶点数组对象Vertex Array Object (VAO)管理 VBO 和 EBO 的配置&#xff0c;存储顶点属性设置&#xff0c;简化渲染流程&#xff0c;避免重复设置状态顶点缓冲区对象Vertex Buffer Object (VBO)存储顶点…