线性回归、bagging回归、随机森林回归

决策树

import pandas as pd
import numpy as np
import graphviz
from sklearn.tree import DecisionTreeRegressor
from sklearn import tree

X = np.array(data[['C', 'E']])  # Create an array
y = np.array(data['NOx'])

regt = DecisionTreeRegressor(max_depth=4)

regt = regt.fit(X, y)  # Build a decision tree regressor from the training set (X, y)

dot_data = tree.export_graphviz(regt, out_file=None)  # Export a decision tree in DOT format

graph = graphviz.Source(dot_data)

graph.render("tree")  # Save the source to file

这里写图片描述
[注]

节点属性:

  • X[1]X = np.array(data[['C', 'E']])中的E列,为特征值
  • samples:样本的数量
  • mse:均方误差(mean-square error, MSE)是反映估计量与被估计量之间差异程度的一种
  • value:平均值

print(regt.score(X, y))
------------------------------------
0.949306568162
regt1 = regt.fit(X[:, 1].reshape(-1, 1), y)  # reshape(-1, 1) 将数组改为 多行1列

dot_data = tree.export_graphviz(regt, out_file=None)

graph = graphviz.Source(dot_data)

graph.render("tree1")

regt1.score(X[:, 1].reshape(-1, 1), y)

这里写图片描述

对比过后,发现 treetree1 完全相同


u = np.sort(np.unique(X[:, 1]))
t = np.diff(u)/2+u[:-1]  # diff() 后一个元素减去前一个
  • 4
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值