基于sklearn实现Bagging算法(python)


Posted in Python onJuly 11, 2019

本文使用的数据类型是数值型,每一个样本6个特征表示,所用的数据如图所示:

基于sklearn实现Bagging算法(python)

图中A,B,C,D,E,F列表示六个特征,G表示样本标签。每一行数据即为一个样本的六个特征和标签。

实现Bagging算法的代码如下:

from sklearn.ensemble import BaggingClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.preprocessing import StandardScaler
import csv
from sklearn.cross_validation import train_test_split
from sklearn.metrics import accuracy_score
from sklearn.metrics import confusion_matrix
from sklearn.metrics import classification_report
data=[]
traffic_feature=[]
traffic_target=[]
csv_file = csv.reader(open('packSize_all.csv'))
for content in csv_file:
 content=list(map(float,content))
 if len(content)!=0:
  data.append(content)
  traffic_feature.append(content[0:6])//存放数据集的特征
  traffic_target.append(content[-1])//存放数据集的标签
print('data=',data)
print('traffic_feature=',traffic_feature)
print('traffic_target=',traffic_target)
scaler = StandardScaler() # 标准化转换
scaler.fit(traffic_feature) # 训练标准化对象
traffic_feature= scaler.transform(traffic_feature) # 转换数据集
feature_train, feature_test, target_train, target_test = train_test_split(traffic_feature, traffic_target, test_size=0.3,random_state=0)
tree=DecisionTreeClassifier(criterion='entropy', max_depth=None)
# n_estimators=500:生成500个决策树
clf = BaggingClassifier(base_estimator=tree, n_estimators=500, max_samples=1.0, max_features=1.0, bootstrap=True, bootstrap_features=False, n_jobs=1, random_state=1)
clf.fit(feature_train,target_train)
predict_results=clf.predict(feature_test)
print(accuracy_score(predict_results, target_test))
conf_mat = confusion_matrix(target_test, predict_results)
print(conf_mat)
print(classification_report(target_test, predict_results))

运行结果如图所示:

基于sklearn实现Bagging算法(python)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Lighttpd服务器中运行Django应用的方法
Jul 22 Python
Python使用try except处理程序异常的三种常用方法分析
Sep 05 Python
详解python持久化文件读写
Apr 06 Python
详解Python 字符串相似性的几种度量方法
Aug 29 Python
关于python中plt.hist参数的使用详解
Nov 28 Python
Python tkinter和exe打包的方法
Feb 05 Python
python将dict中的unicode打印成中文实例
May 11 Python
python Socket网络编程实现C/S模式和P2P
Jun 22 Python
Python实现封装打包自己写的代码,被python import
Jul 12 Python
PyQt5多线程防卡死和多窗口用法的实现
Sep 15 Python
python Matplotlib基础--如何添加文本和标注
Jan 26 Python
Flask中jinja2的继承实现方法及实例
Mar 03 Python
Python的log日志功能及设置方法
Jul 11 #Python
python使用装饰器作日志处理的方法
Jul 11 #Python
Python日志无延迟实时写入的示例
Jul 11 #Python
深入了解Python iter() 方法的用法
Jul 11 #Python
用python给自己做一款小说阅读器过程详解
Jul 11 #Python
Python 200行代码实现一个滑动验证码过程详解
Jul 11 #Python
ML神器:sklearn的快速使用及入门
Jul 11 #Python
You might like
一个PHP日历程序
2006/12/06 PHP
优化PHP代码的53条建议
2008/03/27 PHP
一个PHP的String类代码
2010/04/20 PHP
PHP中使用foreach和引用导致程序BUG的问题介绍
2012/09/05 PHP
sql注入与转义的php函数代码
2013/06/17 PHP
PHP 前加at符合@的作用解析
2015/07/31 PHP
Laravel5.4框架中视图共享数据的方法详解
2019/09/05 PHP
js宝典学习笔记(上)
2007/01/10 Javascript
动态加载外部javascript文件的函数代码分享
2011/07/28 Javascript
js时间日期格式化封装函数
2014/12/02 Javascript
JavaScript实现cookie的写入、读取、删除功能
2015/11/05 Javascript
Angularjs CURD 详解及实例代码
2016/09/14 Javascript
jQuery中ajax错误调试分析
2016/12/01 Javascript
jQuery使用ajax_动力节点Java学院整理
2017/07/05 jQuery
微信小程序使用picker实现时间和日期选择框功能【附源码下载】
2017/12/11 Javascript
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
原生JS实现$.param() 函数的方法
2018/08/10 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
2018/08/13 Javascript
详解Vue-Router源码分析路由实现原理
2019/05/15 Javascript
uni-app 支持多端第三方地图定位的方法
2020/01/03 Javascript
在Python中操作字典之clear()方法的使用
2015/05/21 Python
简介Python设计模式中的代理模式与模板方法模式编程
2016/02/02 Python
Python的装饰器使用详解
2017/06/26 Python
浅析Python装饰器以及装饰器模式
2018/05/28 Python
利用Python查看微信共同好友功能的实现代码
2019/04/24 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
pycharm设置当前工作目录的操作(working directory)
2020/02/14 Python
如何提高python 中for循环的效率
2020/04/15 Python
PyCharm+Miniconda3安装配置教程详解
2021/02/16 Python
意大利顶级奢侈品电商:LUISAVIAROMA(支持中文)
2020/05/26 全球购物
知识竞赛活动方案
2014/02/18 职场文书
置业顾问岗位职责
2014/03/02 职场文书
班主任评语大全
2014/04/26 职场文书
关于晚自习早退的检讨书
2014/09/13 职场文书
2015年酒店服务员工作总结
2015/05/18 职场文书
Web前端:CSS最强总结 附详细代码
2021/03/31 HTML / CSS