Python随机森林算法的使用
#coding:utf-8 # from python.Lib.packages.sklearn.tree import DecisionTreeClassifier
# from python.Lib.packages.matplotlib.pyplot import *
# from python.Lib.packages.sklearn.cross_validation import train_test_split
# from python.Lib.packages.sklearn.ensemble import RandomForestClassifier
# from python.Lib.packages.sklearn.externals.joblib import Parallel,delayed
# from python.Lib.packages.sklearn.tree import export_graphviz
# from python.Lib.packages.sklearn.datasets import load_iris
# import python.Lib.packages.pandas as pd from sklearn.tree import DecisionTreeClassifier
from matplotlib.pyplot import *
from sklearn.cross_validation import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.externals.joblib import Parallel,delayed
from sklearn.tree import export_graphviz
from sklearn.datasets import load_iris
import pandas as pd def RandomForest(dir):
# final = open('F:/test/final.dat' , 'r')
data=pd.read_csv(dir)
# data = [line.strip().split('\t') for line in final]
feature=data[[i for i in range(8)]].values
target=data[[8]].values
# target1=[target[0][i] for i in range(len(target[0]))]
# print feature
# print target
# feature = [[float(x) for x in row[3:]] for row in data]
# target = [int(row[0]) for row in data] #拆分训练集和测试集
# iris=load_iris()
#
# feature=iris.data
# target=iris.target
# print iris['target'].shape
feature_train, feature_test, target_train, target_test = train_test_split(feature, target, test_size=0.1, random_state=42) #分类型决策树
clf = RandomForestClassifier() #训练模型
s = clf.fit(feature_train,target_train)
print s #评估模型准确率
r = clf.score(feature_test , target_test)
print r print u'判定结果:%s' % clf.predict(feature_test[0])
#print clf.predict_proba(feature_test[0]) print u'所有的树:%s' % clf.estimators_ print clf.classes_
print clf.n_classes_ print u'各feature的重要性:%s' % clf.feature_importances_
if __name__=="__main__":
dir="Carseats.csv"
RandomForest(dir)
Python随机森林算法的使用的更多相关文章
- H2O中的随机森林算法介绍及其项目实战(python实现)
H2O中的随机森林算法介绍及其项目实战(python实现) 包的引入:from h2o.estimators.random_forest import H2ORandomForestEstimator ...
- 用Python实现随机森林算法,深度学习
用Python实现随机森林算法,深度学习 拥有高方差使得决策树(secision tress)在处理特定训练数据集时其结果显得相对脆弱.bagging(bootstrap aggregating 的缩 ...
- Python机器学习笔记——随机森林算法
随机森林算法的理论知识 随机森林是一种有监督学习算法,是以决策树为基学习器的集成学习算法.随机森林非常简单,易于实现,计算开销也很小,但是它在分类和回归上表现出非常惊人的性能,因此,随机森林被誉为“代 ...
- 随机森林算法demo python spark
关键参数 最重要的,常常需要调试以提高算法效果的有两个参数:numTrees,maxDepth. numTrees(决策树的个数):增加决策树的个数会降低预测结果的方差,这样在测试时会有更高的accu ...
- 随机森林算法OOB_SCORE最佳特征选择
RandomForest算法(有监督学习),可以根据输入数据,选择最佳特征组合,减少特征冗余:原理:由于随机决策树生成过程采用的Boostrap,所以在一棵树的生成过程并不会使用所有的样本,未使用的样 ...
- Spark mllib 随机森林算法的简单应用(附代码)
此前用自己实现的随机森林算法,应用在titanic生还者预测的数据集上.事实上,有很多开源的算法包供我们使用.无论是本地的机器学习算法包sklearn 还是分布式的spark mllib,都是非常不错 ...
- Bagging与随机森林算法原理小结
在集成学习原理小结中,我们讲到了集成学习有两个流派,一个是boosting派系,它的特点是各个弱学习器之间有依赖关系.另一种是bagging流派,它的特点是各个弱学习器之间没有依赖关系,可以并行拟合. ...
- R语言︱决策树族——随机森林算法
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:有一篇<有监督学习选择深度学习 ...
- R语言︱机器学习模型评估方案(以随机森林算法为例)
笔者寄语:本文中大多内容来自<数据挖掘之道>,本文为读书笔记.在刚刚接触机器学习的时候,觉得在监督学习之后,做一个混淆矩阵就已经足够,但是完整的机器学习解决方案并不会如此草率.需要完整的评 ...
随机推荐
- 一些上流的CSS3图片样式
直接在图片元素上直接应用CSS3 inset box-shadow 或 border-radius时,浏览器并不能完美的渲染它们.不过,如果把这个图片用作背景图,你就可以可以给它添加任何样式了,浏览器 ...
- 组合模式(Composite Pattern)
组合模式主要用来处理一类具有“容器特征”的对象——即它们在充当对象的同时,又可以作为容器包含其他多个对象. 组合模式实现的最关键的地方是——简单对象和复合对象必须实现相同的接口.这就是组合模式能够将组 ...
- WCF实现客户端自动更新
IServiceUpdate using System.IO; using System.ServiceModel; using System.ServiceModel.Web; namespace ...
- CompositeConfiguration的用法
public class Mytest { private static ApplicationContext applicationContext; public static void main( ...
- Deepin下phpunit安装,以及执行过程中所遇到的问题
Deepin下phpunit安装,以及执行过程中所遇到的问题 安装phpunit步骤 wget https://phar.phpunit.de/phpunit.phar chmod +x phpuni ...
- 【netty】Netty系列之Netty百万级推送服务设计要点
1. 背景 1.1. 话题来源 最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我,咨询推送服务相关的问题.问题五花八门,在帮助大家答疑解惑的过程中,我也对问题进行了总结,大概可以归纳为 ...
- Corel Painter 15在Surface Pro 4下开启笔触压力感应
之前一直是用Wacom的板子,所以只需要下载Wacom板子相应的驱动安装即可就能在PS和Corel Painter中开启压力感应来调节笔触出线的粗细.Surface Pro 4的笔是支持压力感应的,但 ...
- EditText 自动格式化电话电话号码
需要格式化的格式为:xxx xxxx xxxx 有两种方式:1.为监听当前输入的长度,当长度为第四位,九位的时候,在原内容上追加空格.(from stackOverFlow)2.每次输入后,格式化当前 ...
- 为什么在注册和注销的时候intent要改成隐式调用
显式意图:调用Intent.setComponent()或Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了Intent应该传递给哪个组件. 隐式意图: ...
- JAVA设计模式之工厂方法模式
在阎宏博士的<JAVA与模式>一书中开头是这样描述工厂方法模式的: 工厂方法模式是类的创建模式,又叫做虚拟构造子(Virtual Constructor)模式或者多态性工厂(Polymor ...