机器学习中的数据预处理

数据的预处理总共可以大致分为6步。

  1. 导入需要的库
    这两个是我们每次都需要导入的库
    Numpy包含数学计算函数
    Pandas用于导入和管理数据集

  2. 导入数据集
    数据集通常是.csv格式。csv文件以文本形式保存表格数据。文件的每一行是一条数据记录。我们使用pandas的read_csv方法读取本地CSV文件为一个数据帧。然后从数据帧中制作自变量和因变量的矩阵和向量。

  3. 处理丢失数据
    我们得到的数据很少是完整的。数据可能因为各种原因丢失,为了不降低机器学习模型的性能,需要处理数据。我们可以用整列的平均值或中间值替换丢失的数据。我们用sklearn.preprocessiong库中的Imputer类完成这项任务

  4. 解析分类数据
    分类数据指的是函数标签值而不是数字值的变量。取值范围通常是固定的。例如“YES”和“NO”不能用于模型的数字计算,所以需要解析成数字。为实现这一功能,我们从sklearn.preprocessing库导入LabelEndoer类。

  5. 拆分数据集为测试集合和训练集合
    把数据集拆分成两个:一个是用来训练模型的训练集合,另一个是用来验证模型的测试集合。两者比例一般是80:20。我们导入sklearn.crossvalidation库中的train_test_split()方法。

  6. 特征缩放
    大部分模型算法使用两点间的欧式距离表示,但此特征在幅度、单位和范围姿态问题上变化很大。在距离计算中,高幅度的特征比低幅度特征权重更大。可用特征标准化或Z值归一化解决。导入sklearn.preprocessing库中的StandardScalar类。

本文摘抄自
https://github.com/MLEveryday/100-Days-Of-ML-Code

猜你喜欢

转载自blog.csdn.net/flyfor2013/article/details/83478866