export_text#

sklearn.tree.export_text(decision_tree, *, feature_names=None, class_names=None, max_depth=10, spacing=3, decimals=2, show_weights=False)[源代码]#

构建显示决策树规则的文本报告。

请注意,可能不支持向后兼容性。

参数:
decision_tree对象

要输出的决策树估计器。它可以是DecisionTreeClassifier或DecisionTreeRegressor的实例。

feature_names形状类似阵列(n_features,),默认=无

包含要素名称的数组。如果无,将使用通用名称(“feature_0”、“feature_1”、.)。

class_names形状类似数组(n_classes,),默认=无

每个目标类的名称(按数字递减顺序排列)。仅与分类相关,不支持多输出。

  • 如果 None ,将类名称委托给 decision_tree.classes_ ;

  • 否则, class_names 将用作类名称,而不是 decision_tree.classes_ .的长度 class_names 必须匹配的长度 decision_tree.classes_ .

Added in version 1.3.

max_depthint,默认值=10

仅输出树的第一个max_depth级别。截短的树枝将标记“.”".

spacingint,默认=3

边之间的空间数。它越高,结果越广泛。

decimalsint,默认=2

要显示的小数位数。

show_weights布尔,默认=假

如果为真,分类权重将在每片叶子上输出。分类权重是每个类别的样本数量。

返回:
reportstr

决策树中所有规则的文本摘要。

示例

>>> from sklearn.datasets import load_iris
>>> from sklearn.tree import DecisionTreeClassifier
>>> from sklearn.tree import export_text
>>> iris = load_iris()
>>> X = iris['data']
>>> y = iris['target']
>>> decision_tree = DecisionTreeClassifier(random_state=0, max_depth=2)
>>> decision_tree = decision_tree.fit(X, y)
>>> r = export_text(decision_tree, feature_names=iris['feature_names'])
>>> print(r)
|--- petal width (cm) <= 0.80
|   |--- class: 0
|--- petal width (cm) >  0.80
|   |--- petal width (cm) <= 1.75
|   |   |--- class: 1
|   |--- petal width (cm) >  1.75
|   |   |--- class: 2