numpy 如何对每行都有分类值列表的特征进行编码,以训练机器学习模型?

gcmastyq  于 2023-08-05  发布在  其他
关注(0)|答案(2)|浏览(93)

我有一个数据集,其中我有一个分类值列表作为特征的值。我如何编码它来训练模型?
例如,我有一些数据如下:

feature1: [a, b, c]
feature2: [[category1, category2, category3], [category2], [category3, category4]]

字符串
如何编码特征2?

fxnxkyjh

fxnxkyjh1#

from sklearn.preprocessing import MultiLabelBinarizer
    
y = [
        ('Raj', 'Penny'),
        ('Amy', 'Raj'),
        ('Sheldon', 'Penny'),
        ('Leonard', 'Amy'),
        ('Amy', 'Leonard')
    ]
    
one_hot = MultiLabelBinarizer()

print(one_hot.fit_transform(y))

print(one_hot.classes_)

字符串

dnph8jn4

dnph8jn42#

你可以使用LabelEncoderOneHotEncode

from sklearn.preprocessing import LabelEncoder,OneHotEncoder
labelencoder_x=LabelEncoder()
X[:, 0]=labelencoder_x.fit_transform(X[:,0])   
onehotencoder_x=OneHotEncoder(categorical_features=[0]) 
X=onehotencoder_x.fit_transform(X).toarray()

字符串
我想从这里你可以得到这个想法。

相关问题