机器学习100天——第一天(数据预处理)

本文详细介绍了一套标准的数据预处理流程,包括导入库、数据集导入、处理缺失值、解析分类数据、拆分数据集及特征缩放,旨在为模型训练提供高质量的数据准备。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

step 1:导入库 

             NumPy:包含数学计算函数

             Pandas:用于导入和管理数据集

step 2:导入数据集

            数据集通常都是  .csv格式。CSV文件以文本形式保存表格数据。文件的每一行是一条数据记录。

            用 Pandas 的 read_csv 读取本地csv文件为一个数据帧。

            然后从数据帧中制作自变量和因变量的矩阵和向量。    

dataset = pd.read_csv('Data.csv')    # 读取csv文件,也可以在单引号里直接放入数据所在路径
X = dataset.iloc[ : , :-1 ].values   # iloc除了最后一列,提取其他列数据
Y = dataset.iloc[ : , 3].values      # 取第四列(索引为3)的所有行,即最后一列的数据 purchased
                                     # DataFrame.values 取值,查看数据框的具体数据值,不包括索引

step 3:处理丢失数据

            可以用整列的平均值或中间值替换丢失的数据。

            用 sklearn.preprocessing库中的 Imputer 类完成这项任务。

      (代码注释需要补充)

from sklearn.preprocessing import Imputer
imputer = Imputer(missing_values = "NaN", strategy = "mean", axis = 0)  #axis=0(1),表示对每一列(行)进行这个操作;
imputer = imputer.fit(X[ : , 1:3])     #对X中的1、2列处理
X[ : , 1:3] = imputer.transform(X[ : , 1:3])

step 4:解析分类数据

            分类数据指的是含有标签值而不是数字值的变量。取值范围通常是固定的。需要把标签解析成数字。

            用 sklearn.preprocessing库导入LaberEncoder类 实现。

step 5:拆分数据集为测试集和训练集

             把数据集拆分为两部分,训练集:测试集=8:2 .

             用 sklearn.cro-ssvalidation库中的train_test_split()方法 。

step 6:特征缩放

             大部分模型算法使用两点间的欧氏距离表示,但此特征在幅度、单位和范围姿态问题上变化很大。

             在距离计算中,高幅度的特征比低幅度特征权重更大。可用特征标准化或Z值归一化解决。

            用 sklearn.preprocessing库的StandardScalar类 解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值