sklearn决策树代码
时间: 2023-03-19 18:22:17 浏览: 161
以下是一个使用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决策树散点图代码
在Scikit-learn中,创建决策树的散点图(也称为决策边界)需要先训练一个决策树模型,然后利用`plot_tree`函数来可视化。这里是一个简单的例子,假设我们有鸢尾花数据集(Iris dataset)并使用`DecisionTreeClassifier`训练了一个模型:
```python
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
# 加载数据
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)
# 训练决策树
clf = DecisionTreeClassifier(random_state=42)
clf.fit(X_train, y_train)
# 可视化决策树
plt.figure(figsize=(10, 6))
tree.plot_tree(clf, filled=True, class_names=iris.target_names, feature_names=iris.feature_names)
plt.title("Decison Tree for Iris Dataset")
plt.show()
```
这段代码首先加载了鸢尾花数据,接着划分了训练集和测试集,然后用训练数据训练了一个决策树模型。最后通过`plot_tree`方法绘制了决策树,并显示出来。
如果你想要看到每个样本点在二维空间(比如前两个主成分)中的位置及其所属的决策路径,可以使用`export_graphviz`将决策树导出为图形文件,然后用Graphviz软件打开,结合其他工具(如`pydot`)读取并渲染成图像。
注意:实际操作时可能需要安装额外的依赖,如`graphviz`和`pydotplus`。
阅读全文