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

avatar
作者
猴君
阅读量:0

在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的位置代表该数据点所属的类别。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!