Python数据挖掘—分类—决策树

概念

决策树(Decision Tree):它通过对训练样本的学习,并建立分类规则,然后依据分类,对新样本数据进行分类预测,属于有监督学习

优点:决策树易于理解和实现,决策树可处理数值型和非数值型数据

步骤

  • 导入数据,确定虚拟变量的列,然后遍历这些列,将这些类的数据转换为分类型数据,再通过get_dummies()方法获取虚拟变量

 1 import pandas
 2
 3 data=pandas.read_csv(
 4      "C:\\Users\\Jw\\Desktop\\python_work\\Python数据挖掘实战课程课件\\5.3\\data.csv")
 5
 6 dummyColumns=["Gender", "ParentEncouragement"]
 7
 8 for column in dummyColumns:
 9     data[column]=data[column].astype("category")
10
11
12 dummiesData=pandas.get_dummies(
13         data,
14         columns=dummyColumns,
15         prefix=dummyColumns,
16         prefix_sep="=",
17         drop_first=True)
18
19 dummiesData.columns
  • 确定特征数据和目标数据

fData=dummiesData[[
     ‘ParentIncome‘, ‘IQ‘, ‘Gender=Male‘,
    ‘ParentEncouragement=Not Encouraged‘]]

tData=dummiesData["CollegePlans"]

我注意到:fData即是特征数据为一个DataFrame数据框,而tData则是一个Series

  • 导入DecisionTreeClassifier类,然后通过cross_val_score进行评分

1 from sklearn.tree import DecisionTreeClassifier
2
3 dtModel=DecisionTreeClassifier(max_leaf_nodes=8)   #该处为调优
4
5 from sklearn.model_selection import cross_val_score
6
7 cross_val_score(
8     dtModel,
9     fData,tData,cv=10)

dtModel=DecisionTreeClassifier(max_leaf_nodes=8) 此处操作为调优操作,随机森林在不调优前普遍高于决策树模型

原文地址:https://www.cnblogs.com/U940634/p/9746295.html

时间: 2024-10-06 15:51:07

Python数据挖掘—分类—决策树的相关文章

【Python数据挖掘】决策树

决策树的定义 决策树(decision tree)是一个树结构(可以是二叉树或非二叉树).其每个非叶节点表示一个特征属性上的测试,每个分支代表这个特征属性在某个值域上的输出,而每个叶节点存放一个类别.使用决策树进行决策的过程就是从根节点开始,测试待分类项中相应的特征属性,并按照其值选择输出分支,直到到达叶子节点,将叶子节点存放的类别作为决策结果. 树是由节点和边两种元素组成的结构.理解树,就需要理解几个关键词:根节点.父节点.子节点和叶子节点. 父节点和子节点是相对的,说白了子节点由父节点根据某

Python数据挖掘—分类—SVM

概念: 支持向量机(Support Vector Machine) SVM属于一般化线性分类器,这类分类器的特点是他们能够同时最小化经验误差和最大化几何边缘区,因此支持向量机也被称为最大边缘区分类器. 原文地址:https://www.cnblogs.com/U940634/p/9746371.html

【Python数据挖掘课程】四.决策树DTC数据分析及鸢尾数据集分析

今天主要讲述的内容是关于决策树的知识,主要包括以下内容:        1.分类及决策树算法介绍        2.鸢尾花卉数据集介绍        3.决策树实现鸢尾数据集分析        前文推荐:       [Python数据挖掘课程]一.安装Python及爬虫入门介绍       [Python数据挖掘课程]二.Kmeans聚类数据分析及Anaconda介绍       [Python数据挖掘课程]三.Kmeans聚类代码实现.作业及优化        希望这篇文章对你有所帮助,尤其

机器学习经典算法详解及Python实现--CART分类决策树、回归树和模型树

摘要: Classification And Regression Tree(CART)是一种很重要的机器学习算法,既可以用于创建分类树(Classification Tree),也可以用于创建回归树(Regression Tree),本文介绍了CART用于离散标签分类决策和连续特征回归时的原理.决策树创建过程分析了信息混乱度度量Gini指数.连续和离散特征的特殊处理.连续和离散特征共存时函数的特殊处理和后剪枝:用于回归时则介绍了回归树和模型树的原理.适用场景和创建过程.个人认为,回归树和模型树

【Python数据挖掘课程】六.Numpy、Pandas和Matplotlib包基础知识

前面几篇文章采用的案例的方法进行介绍的,这篇文章主要介绍Python常用的扩展包,同时结合数据挖掘相关知识介绍该包具体的用法,主要介绍Numpy.Pandas和Matplotlib三个包.目录:        一.Python常用扩展包        二.Numpy科学计算包        三.Pandas数据分析包        四.Matplotlib绘图包 前文推荐:       [Python数据挖掘课程]一.安装Python及爬虫入门介绍       [Python数据挖掘课程]二.K

【Python数据挖掘课程】九.回归模型LinearRegression简单分析氧化物数据

这篇文章主要介绍三个知识点,也是我<数据挖掘与分析>课程讲课的内容.同时主要参考学生的课程提交作业内容进行讲述,包括:        1.回归模型及基础知识:        2.UCI数据集:        3.回归模型简单数据分析. 前文推荐:       [Python数据挖掘课程]一.安装Python及爬虫入门介绍       [Python数据挖掘课程]二.Kmeans聚类数据分析及Anaconda介绍       [Python数据挖掘课程]三.Kmeans聚类代码实现.作业及优化 

python数据挖掘领域工具包 - wentingtu - 博客园

python数据挖掘领域工具包 - wentingtu - 博客园 python数据挖掘领域工具包 原文:http://qxde01.blog.163.com/blog/static/67335744201368101922991/ Python在科学计算领域,有两个重要的扩展模块:Numpy和Scipy.其中Numpy是一个用python实现的科学计算包.包括: 一个强大的N维数组对象Array: 比较成熟的(广播)函数库: 用于整合C/C++和Fortran代码的工具包: 实用的线性代数.傅

【机器学习算法-python实现】决策树-Decision tree(1) 信息熵划分数据集

(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景 决策书算法是一种逼近离散数值的分类算法,思路比較简单,并且准确率较高.国际权威的学术组织,数据挖掘国际会议ICDM (the IEEE International Conference on Data Mining)在2006年12月评选出了数据挖掘领域的十大经典算法中,C4.5算法排名第一.C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3算法. 算法的主要思想就是将数据集依照特

【Python数据挖掘课程】五.线性回归知识及预测糖尿病实例

今天主要讲述的内容是关于一元线性回归的知识,Python实现,包括以下内容:        1.机器学习常用数据集介绍        2.什么是线性回顾        3.LinearRegression使用方法        4.线性回归判断糖尿病        前文推荐:       [Python数据挖掘课程]一.安装Python及爬虫入门介绍       [Python数据挖掘课程]二.Kmeans聚类数据分析及Anaconda介绍       [Python数据挖掘课程]三.Kmean