当前位置:   article > 正文

Python算法总结(六)决策树回归(附手写python实现代码)_树回归算法个人总结

树回归算法个人总结

注:可结合”Python算法总结(三)决策树分类(附手写python实现代码)“一起阅读!

一、算法类型

有监督的回归算法

二、手写python算法

基于CART算法的python实现。
CART算法特点:①每个特征的重要程度是不一样,②每个连续型特征的不同分箱的重要程度是不一样的。

# 辅助函数1:切分数据集函数
def binsplitdataset(dataset,feature_index,value):
    '''
    参数说明:
        dataset是带有标签的数据集
        feature_name用于切分的特征
        value该切分特征的切分点
    返回:按featurename特征的value切分的数据集2个    
    '''
    dataset_0=dataset[dataset.iloc[:,feature_index] >  value]
    dataset_1=dataset[dataset.iloc[:,feature_index] <= value]
    return dataset_0,dataset_1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
# 辅助函数2:计算切分误差函数
def error(dataset):
    '''
    参数说明:dataset是带有标签的数据集
    返回:数据集标签列的误差值,误差值=方差*样本数量,
        为何乘以样本数量?回答:“子样本数量=切分子集样本占总样本的比重*总样本数量”,即每个子样本的误差同比放大“总样本数量”倍数。
        便于后续横向比较不同切分的误差值。
    '''
    err=dataset.iloc[:,-1].var() * dataset.shape[0]
    return err
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
# 辅助函数3:生成叶节点的函数
def leaf_label(dataset):
    '&#
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/726860
推荐阅读
相关标签
  

闽ICP备14008679号