sklearn决策树代码
时间: 2023-03-19 09:22:17 浏览: 117
以下是一个使用sklearn库的决策树分类器的示例代码:
```python
from sklearn.tree import DecisionTreeClassifier
from sklearn.datasets import load_iris
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, test_size=0.2, random_state=42)
# 创建决策树分类器
clf = DecisionTreeClassifier()
# 使用训练集拟合分类器
clf.fit(X_train, y_train)
# 使用测试集测试分类器性能
score = clf.score(X_test, y_test)
print("分类器在测试集上的准确率为:", score)
```
这个例子使用`load_iris()`加载了鸢尾花数据集,并使用`train_test_split()`函数将数据集划分为训练集和测试集。然后,创建了一个决策树分类器,使用训练集对其进行拟合,并使用测试集对其进行测试,最后输出分类器在测试集上的准确率。
相关问题
sklearn决策树简单代码
当然,下面是一个使用scikit-learn库中的决策树算法进行分类的简单代码:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 初始化决策树模型
model = DecisionTreeClassifier()
# 拟合训练集
model.fit(X_train, y_train)
# 预测测试集
y_pred = model.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"准确率:{accuracy}")
```
以上代码首先加载了一个经典的鸢尾花数据集(iris),然后将数据集划分为训练集和测试集。接下来,创建了一个决策树分类器模型,并使用训练集拟合模型。最后,使用训练好的模型对测试集进行预测,并计算准确率。
这只是一个简单的示例,你可以根据自己的需求进行进一步调整和扩展。
sklearn决策树可视化
sklearn决策树可视化需要借助Graphviz工具,具体步骤如下:
1. 安装Graphviz工具
首先需要在本地安装Graphviz工具,可以通过官网下载对应操作系统版本的安装包,并进行安装。
2. 安装Python库
使用以下命令安装相关Python库:
```
pip install pydotplus
pip install graphviz
```
3. 加载数据集并训练决策树模型
使用sklearn库加载数据集并训练决策树模型,例如:
```
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target
# 训练决策树模型
clf = DecisionTreeClassifier()
clf.fit(X, y)
```
4. 可视化决策树
使用以下代码将决策树可视化:
```
from sklearn.tree import export_graphviz
import pydotplus
from IPython.display import Image
# 将决策树导出为DOT格式
dot_data = export_graphviz(clf, out_file=None,
feature_names=iris.feature_names,
class_names=iris.target_names,
filled=True, rounded=True,
special_characters=True)
# 使用pydotplus库将DOT格式转换为图像
graph = pydotplus.graph_from_dot_data(dot_data)
# 使用Image库显示图像
Image(graph.create_png())
```
如果想将决策树保存为PDF或PNG文件,可以使用以下代码:
```
# 将决策树保存为PDF文件
graph.write_pdf("iris.pdf")
# 将决策树保存为PNG文件
graph.write_png("iris.png")
```
这样就可以将sklearn决策树可视化了。