为随机森林编码标签

数据挖掘 Python scikit-学习 随机森林 编码
2022-02-22 05:55:11

我有以下数据集: 在此处输入图像描述

我想使用属性TagsAuthors将每条记录分类为它们各自的Rating为此,我想使用随机森林分类器。我关心的是如何处理标签属性。每个条目都有不确定数量的标签,用逗号分隔。共有 4412 个唯一标签,标签较多的条目包含 20 个标签。第一个条目有标签 ["Rhode Island","Economy","Taxes","Lincoln Chafee"]。

我应该如何编码这个属性,以便我可以使用sklearn中的随机森林分类器?

1个回答
  1. 你应该使用 sklearn MultiLabelBinarizer
from sklearn.preprocessing import MultiLabelBinarizer
lb = MultiLabelBinarizer()

lb.fit_transform([['A', 'B', 'C'],[ 'A', 'D', 'E', 'B']])

数组([[1, 1, 1, 0, 0],
[1, 1, 0, 1, 1]])

  1. 如果需要,删除低于阈值的列(列的总和)。这将通过删除低方差特征来减少特征计数