scikit-learn实现决策树分类与回归以及调参说明

分类:

from sklearn.datasets import load_iris
iris=load_iris()
# print(iris)
# print(len(iris["data"]))#150个数据
from sklearn.model_selection import train_test_split
#把数据分为测试数据和验证数据 test_size=0.2验证数据集占20% 也就是150个数据有30个验证集 random_state=1随机的选择30个数据
train_data,test_data,train_target,test_target=train_test_split(iris.data,iris.target,test_size=0.2,random_state=1)

#2.进行建模
from sklearn import tree
#引入分类器
clf=tree.DecisionTreeClassifier(criterion="entropy")
clf.fit(train_data,train_target)#用训练集进行训练,一般情况下fit就是建立模型,而predict就是进行预测
#进行预测
y_pred=clf.predict(test_data)
print(test_target)
print(y_pred)
import numpy as np
print(np.mean(y_pred==test_target))
输出:
[0 1 1 0 2 1 2 0 0 2 1 0 2 1 1 0 1 1 0 0 1 1 1 0 2 1 0 0 1 2]
[0 1 1 0 2 1 2 0 0 2 1 0 2 1 1 0 1 1 0 0 1 1 2 0 2 1 0 0 1 2]
0.9666666666666667

 

下面关于调参的内容是引用的别人的博客,原文网址:https://blog.csdn.net/qq_38923076/article/details/82931340

sklearn中决策树算法参数共有13个,如下:

 

class sklearn.tree.DecisionTreeClassifier(criterion=’gini’, splitter=’best’, max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=None, random_state=None, max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, class_weight=None, presort=False)
英文文档在这:决策树参数

 

回归:

# 1.决策树回归
from sklearn import tree

model_decision_tree_regression = tree.DecisionTreeRegressor()

下面的参数说明转载出处为https://blog.csdn.net/wl2858623940/article/details/80448875 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CtrlZ1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值