如何在python的决策树中使用分类数据

时间:2018-10-30 13:22:29

标签: python machine-learning scikit-learn

我有一个数据集,我从中抽取了12个特征用于决策树共参考解析的任务。这些功能的一些示例是:

  • distance_feature():根据句子数,i和j之间的距离。输出:0或1

    • Ispronoun_feature():如果名词短语是代词,则此功能设置为true。

    • appositive_feature():此功能检查j是否在i的位置。

创建所有这些功能以从数据集中提取结果后,我不知道如何选择根节点或不使用sci-kit学习决策树算法,因为数据不是结构化的并且是分类的。我读过的一篇论文提到了熵和信息增益,但是这两个属性的所有示例均基于结构化数据集。

2 个答案:

答案 0 :(得分:0)

使用一键编码。

df = pd.get_dummies(df, [categorical_columns_you_want_to_encode])

如果最后的列过多,则可以对列进行预处理,以删除不常见的值-例如,小于1%以避免出现太多的列。

答案 1 :(得分:0)

如果您具有不同类别的不同功能,并且不想花时间自己编码,那么我建议您使用CatBoost框架,该框架也比标准scikit树实现更快。

选中此kaggle进行实施!