如何在 Python 中使用 scikit-learn 库预处理数据?


数据预处理指的是数据清洗、去除无效数据、噪声、用相关值替换数据等等。

这并不总是指文本数据;它也可能是图像或视频处理。它是机器学习管道中的一个重要步骤。

数据预处理基本上是指将所有数据(从各种资源或单个资源收集)收集到通用格式或统一数据集(取决于数据类型)的任务。

这样做是为了让学习算法能够从这个数据集中学习,并给出具有较高准确性的相关结果。由于现实世界的数据永远不会是理想的,因此数据可能存在缺失单元格、错误、异常值、列不一致等等。

有时,图像可能未正确对齐,或者可能不清楚,或者可能尺寸过大。预处理的目标是消除这些差异和错误。数据预处理不是一项单一的任务,而是一组按步骤执行的任务。

一个步骤的输出成为下一步的输入,依此类推。

让我们以将数值转换为布尔值为例 -

示例

import numpy as np
from sklearn import preprocessing
input_data = np.array([[34.78, 31.9, -65.5],[-16.5, 2.45, -83.5],[0.5, -87.98, 45.62],
[5.9, 2.38, -55.82]])
data_binarized = preprocessing.Binarizer(threshold=0.5).transform(input_data)
print("\Values converted from numeric to Boolean :\n", data_binarized)

输出

Values converted from numeric to Boolean :
[[1. 1. 0.]
[0. 1. 0.]
[0. 0. 1.]
[1. 1. 0.]]

解释

  • 导入所需的包。
  • 使用 Numpy 库生成输入数据。
  • 使用 sklearn 的 'preprocessing' 类中的 'Binarizer' 函数将数值转换为布尔值。
  • 布尔值基本上只指 1 和 0。
  • 此转换后的数据打印在控制台上。

更新于: 2020年12月10日

229 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告