sklearn.tree.export_text?
sklearn.tree.export_text(decision_tree, *, feature_names=None, max_depth=10, spacing=3, decimals=2, show_weights=False)
建立一個文本報告,顯示決策樹的規則。 請注意,可能不支持向后兼容。
參數 | 說明 |
---|---|
decision_tree | object 要導出的決策樹評估器。它可以是DecisionTreeClassifier或DecisionTreeRegressor的實例。 |
feature_names | list, optional (default=None) 包含特征名稱的長度為n_features的列表。 如果為None,則使用通用名稱(“ feature_0”,“ feature_1”,…)。 |
max_depth | int, optional (default=10) 僅導出樹的第一個max_depth級別。截斷的分支將標記為“…”。 |
spacing | int, optional (default=3) 邊之間的間隔數。值越高,結果越寬。 |
decimals | int, optional (default=2) 要顯示的小數位數。 |
show_weights | bool, optional (default=False) 如果為true,則將在每個葉子上導出分類權重。分類權重是每個類別的樣本數。 |
返回值 | 說明 |
---|---|
report | string 決策樹中所有規則的文本摘要。 |
示例
>>> 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