列表(分类值)的列表的一种热编码

时间:2019-12-03 19:35:05

标签: python-3.x one-hot-encoding

我在列表格式列表中有这样的数据: my_list = [[code1, code2, code3], [code4, code2, code7], [code1, code2, code4].... [code1, code3, code5]]

数据只有10行,但有数千个代码。 我想对此(列表列表)进行一次热编码。

我首先尝试使用具有所有唯一值的标签编码,然后尝试将相同的值应用于此数据(my_list)。

这是我写的:

    all_codes = data['Code'].unique()

    # Label Encoding
    label_encoder   = LabelEncoder()
    integer_encoded = label_encoder.fit_transform(all_codes)

    # Binary Encoding
    onehot_encoder  = OneHotEncoder(sparse=False)
    integer_encoded = integer_encoded.reshape(len(integer_encoded), 1)
    onehot_encoded  = onehot_encoder.fit_transform(my_list)

但是这使我出错。 如果数据具有单个功能,则使用array.reshape(-1,1)来重塑数据;如果包含单个样本,则使用array.reshape(1,-1)来重塑数据。

0 个答案:

没有答案