python

python类别变量怎么转化为数值型

小亿
84
2023-10-31 23:06:46
栏目: 编程语言

在Python中,可以使用独热编码(One-Hot Encoding)将类别变量转化为数值型。

独热编码是一种将类别变量转化为二进制向量的方法。对于一个有n个类别的变量,独热编码将其转化为n个二进制变量,其中每个变量代表一个类别,如果数据点属于该类别,则对应的二进制变量为1,否则为0。

可以使用scikit-learn库中的OneHotEncoder来进行独热编码,示例如下:

from sklearn.preprocessing import OneHotEncoder

# 定义类别变量
categories = ['A', 'B', 'C', 'A', 'B', 'C']

# 创建OneHotEncoder对象
encoder = OneHotEncoder(sparse=False)

# 将类别变量进行独热编码
encoded_categories = encoder.fit_transform(np.array(categories).reshape(-1, 1))

print(encoded_categories)

输出结果为:

array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.],
       [1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])

每一行表示一个数据点的独热编码,其中1的位置代表该数据点所属的类别。

0
看了该问题的人还看了