OneHotEncoder理解
作用
OneHotEncoder是一个常用的 数据预处理方法,它可以 将离散型变量转换为连续型变量,使之更适于机器学习模型的应用。通常我们会使用Pandas处理数据读入之后,使用OneHotEncoder对离散数据进行转换。
应用场景
OneHotEncoder可以处理多种类型的数据集,其中最具代表性的应用场景是:当我们使用线性回归、逻辑回归等模型时,我们需要对离散型变量进行编码,将其转换为连续型变量。
案例
先看代码
import numpy as np
from sklearn.preprocessing import OneHotEncoder
enc = OneHotEncoder(handle_unknown='ignore')
X = [['Male', 1],
['Female', 3],
['Female', 2]]
#将所有的列都当成object类型进行处理,比如第2列的1,2,3,或者浮点数等等
enc.fit(X)
# 打印数组
# array([[0., 1., 1., 0., 0.],
# [1., 0., 0., 0., 1.],
# [1., 0., 0., 1., 0.]])
print(enc.transform(X).toarray())
# 打印稀疏矩阵
# (0, 1) 1.0
# (0, 2) 1.0
# (1, 0) 1.0
# (1, 4) 1.0
# (2, 0) 1.0
# (2, 3) 1.0
print(enc

本文详细介绍了OneHotEncoder用于将离散型变量转换为连续型以便于机器学习模型处理的方法,以及DictVectorizer如何将特征值映射的字典列表转换为向量。通过案例展示了这两个工具在实际应用中的操作和原理。
最低0.47元/天 解锁文章
1772

被折叠的 条评论
为什么被折叠?



