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

1、概要

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

2、简介

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

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

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

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

3.1 安装依赖

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

3.2、定义数据集
python 复制代码
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
python 复制代码
# 标准化处理
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]])
python 复制代码
# 归一化处理
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
python 复制代码
# 划分训练集 _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、 总结

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

相关推荐
白-胖-子1 小时前
深入剖析大模型在文本生成式 AI 产品架构中的核心地位
人工智能·架构
想要成为计算机高手2 小时前
11. isaacsim4.2教程-Transform 树与Odometry
人工智能·机器人·自动驾驶·ros·rviz·isaac sim·仿真环境
mortimer2 小时前
安装NVIDIA Parakeet时,我遇到的两个Pip“小插曲”
python·github
NeoFii3 小时前
Day 22: 复习
机器学习
@昵称不存在3 小时前
Flask input 和datalist结合
后端·python·flask
静心问道3 小时前
InstructBLIP:通过指令微调迈向通用视觉-语言模型
人工智能·多模态·ai技术应用
宇称不守恒4.03 小时前
2025暑期—06神经网络-常见网络2
网络·人工智能·神经网络
赵英英俊3 小时前
Python day25
python
东林牧之4 小时前
Django+celery异步:拿来即用,可移植性高
后端·python·django
何双新4 小时前
基于Tornado的WebSocket实时聊天系统:从零到一构建与解析
python·websocket·tornado