python - 如何强制决策树在评估时仅使用整数

标签 python machine-learning scikit-learn decision-tree

我正在做一个决策树,我想强制算法仅以整数来评估条件。我使用的功能是离散和整数,因此树显示 "X <= 42.5" 没有意义,因此在本例中,我希望树显示在框中输入 “X < 43”“X <= 42” 中的等效项之一。

我需要这个来让非技术人员更容易理解这棵树。显示“少于 15.5 首歌曲”没有意义,应该少于 43 小于或等于42.

我尝试更改源表的列类型,都是int64,问题依旧。

我正在使用的代码:

clf = tree.DecisionTreeClassifier(criterion='gini',
                                  max_depth=2,
                                  splitter='best')

clf = clf.fit(users_data, users_target)

到目前为止,我在文档中没有找到任何参数或类似的内容。

谢谢!

最佳答案

首先,我不会自己调整树规则,我会调整情节。

还有一个额外的tree ploting package来自 sklearn 。 通过此调整:

precision : int, optional (default=3)

    Number of digits of precision for floating point in the values of impurity, threshold and value attributes of each node.

您可以更改它,例如:

tree.plot_tree(clf, precision=0)

应该给你四舍五入的数字。

关于python - 如何强制决策树在评估时仅使用整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58766135/

相关文章:

Python 命令行(参数太少)

elasticsearch - 使用机器学习创建异常检测

machine-learning - OOV 词的词嵌入

python - SKLearn KMeans收敛警告

google-app-engine - 是否可以在 Google App Engine 上运行 scikit-learn?

Python 抓取(Beautiful Soup)从这个 HTML 中获取数据

python - 为什么 ~pd.isnull() 返回 -2?

Python,有没有办法将 df.drop 分配给新变量?

python - 构建天气预报实时数据管道

machine-learning - 使用fit_transform()和transform()