在不知道类别的情况下进行一次一键热编码

时间:2019-09-20 05:49:36

标签: python dask one-hot-encoding

我有熊猫码,在这里我要进行一键编码。

from sklearn.preprocessing import MultiLabelBinarizer
...
mlb = MultiLabelBinarizer() 
df_tmp = pd.DataFrame(mlb.fit_transform(df['CatData']), columns=mlb.classes_, index=df.index)

我的CatData列包含类别列表。

要处理更大的数据集,我尝试使用dask。大多数熊猫功能都可以直接替换。但是,由于预先不知道类别,因此一键编码是棘手的。我正在考虑在整个数据集中逐行扫描该列,将列表中找到的每个类别放入字典中。然后,使用这些词典为一键编码创建列名。有没有一种方法可以更强大地完成任务?

1 个答案:

答案 0 :(得分:0)

您可能需要df.categorize()函数。