决策树python
时间: 2023-06-28 11:12:02 浏览: 47
在Python中,可以使用Scikit-learn库来构建决策树模型。下面是一个简单的示例:
首先,导入必要的库:
```python
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
```
接着,加载数据集并将其分成训练集和测试集:
```python
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=0)
```
然后,创建决策树分类器并进行训练:
```python
tree = DecisionTreeClassifier(random_state=0)
tree.fit(X_train, y_train)
```
最后,使用测试集评估模型的性能:
```python
print("Accuracy on training set: {:.3f}".format(tree.score(X_train, y_train)))
print("Accuracy on test set: {:.3f}".format(tree.score(X_test, y_test)))
```
完整代码示例:
```python
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=0)
tree = DecisionTreeClassifier(random_state=0)
tree.fit(X_train, y_train)
print("Accuracy on training set: {:.3f}".format(tree.score(X_train, y_train)))
print("Accuracy on test set: {:.3f}".format(tree.score(X_test, y_test)))
```
输出结果:
```
Accuracy on training set: 1.000
Accuracy on test set: 0.974
```
这表明模型在训练集上的准确率为100%,在测试集上的准确率为97.4%。