决策树DTC数据分析及鸢尾数据集分析

合集下载

浅析决策树在鸢尾花分类中的应用

浅析决策树在鸢尾花分类中的应用

浅析决策树在鸢尾花分类中的应用作者:段欣伸郭威侯婷婷刘雷来源:《环球市场》2019年第16期摘要:当今,机器学习在各个领域都有广泛的应用,特别在数据分析领域有着深远的影响。

而决策树是机器学习中最基础且应用最广泛的分类算法模型。

本文介绍了决策树的相关概念、决策树模型及简单应用。

通过对鸢尾花数据集进行决策树分类,并对分类结果与实际结果进行比对,进而分析其分类的准确率。

最后基于Python语言,设计与实现了决策树模型在对鸢尾花数据集分类中的应用实例。

关键词:鸢尾花;决策树;分类;信息熵;信息增益一、引言鸢尾花数据集包含150个样本,对应数据集的每行数据。

每行数据包含每个样本的四个特征和样本的类别信息,所以iris数据集是一个150行5列的二维表。

iris数据集是用来给花做分类的数据集,每个样本包含了花萼长度、花尊宽度、花瓣长度、花瓣宽度四个特征(前4列)。

iris的每个样本都包含了品种信息,即目标属性(第5列)。

二、方法(一)决策树决策树是一个预测模型:其代表的是对象属性与对象值之间的一种映射关系。

树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。

决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。

数(二)信息熵“信息熵”(informationentropy)是度量样本集合纯度的一种常用指标。

若集合D中存在d 个类别的N个样本,令Pk=成为从集合D中随机选取一个样本属于第k类样本的概率,可用公式-1计算信息熵:Ent(D)=-S&=1Prlog2Pk公式-1(三)信息增益信息增益(informationgain),计算公式为公式-2:式中,D,为样本数据集D根据属性a进行划分而产生的V个分支节点中的第v个分支的样本数目,Ent(D)为根据公式-1计算得出的D,的信息熵。

求得的信息增益Gain(D,a)越大,则表明使用属性a进行划分获得的“纯度提升”越大。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集引言概述:鸢尾花数据集是机器学习领域中最经典的数据集之一。

它包含了三个不同种类的鸢尾花的测量数据,被广泛应用于分类算法的训练和评估。

本文将详细介绍鸢尾花数据集的来源、特征以及其在机器学习中的应用。

一、鸢尾花数据集的来源1.1 数据集的背景鸢尾花数据集最早由英国统计学家罗纳德·费舍尔于1936年收集并提出。

他通过测量鸢尾花的萼片长度、萼片宽度、花瓣长度和花瓣宽度,将鸢尾花分为三个不同的物种:山鸢尾(Setosa)、变色鸢尾(Versicolor)和维吉尼亚鸢尾(Virginica)。

1.2 数据集的特点鸢尾花数据集共有150个样本,每个样本包含了四个特征的测量值和对应的物种类别。

这些特征值是连续的实数,可以用来描述鸢尾花的形态特征。

数据集中的样本数量相对较小,但足够用来进行机器学习算法的训练和评估。

1.3 数据集的可用性鸢尾花数据集是公开可用的,可以从多个机器学习库中获取,如scikit-learn等。

这使得研究人员和开发者可以方便地使用这个数据集来验证算法的性能和比较不同模型的表现。

二、鸢尾花数据集的特征2.1 萼片长度(Sepal Length)萼片长度是指鸢尾花的萼片(sepals)的长度,以厘米为单位。

它是描述鸢尾花大小的重要特征之一。

2.2 萼片宽度(Sepal Width)萼片宽度是指鸢尾花的萼片的宽度,以厘米为单位。

它也是描述鸢尾花形态的重要特征之一。

2.3 花瓣长度(Petal Length)花瓣长度是指鸢尾花的花瓣(petals)的长度,以厘米为单位。

花瓣长度通常是区分不同鸢尾花物种的重要特征。

2.4 花瓣宽度(Petal Width)花瓣宽度是指鸢尾花的花瓣的宽度,以厘米为单位。

花瓣宽度也是描述鸢尾花形态的重要特征之一。

三、鸢尾花数据集在机器学习中的应用3.1 分类算法的训练鸢尾花数据集被广泛应用于分类算法的训练。

通过使用已知的鸢尾花数据集作为训练样本,机器学习算法可以学习到不同物种之间的特征差异,从而实现对未知鸢尾花的分类。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集引言概述:鸢尾花数据集是机器学习领域中常用的一个数据集,由英国统计学家Fisher于1936年首次引入。

该数据集包含了三个不同种类的鸢尾花的测量数据,是一个用于分类问题的经典数据集。

本文将从数据集的背景介绍、数据集的特征、数据集的应用以及数据集的局限性等方面进行详细阐述。

正文内容:1. 数据集的背景介绍1.1 鸢尾花数据集的来源鸢尾花数据集是由Fisher在研究鸢尾花的遗传学特性时采集而来。

他采集了150朵鸢尾花的样本,每朵鸢尾花都测量了其萼片长度、萼片宽度、花瓣长度和花瓣宽度等四个特征。

1.2 数据集的种类鸢尾花数据集包含了三个不同种类的鸢尾花,分别是山鸢尾(Iris-setosa)、变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica)。

每一个种类的鸢尾花在特征上都有一定的差异。

1.3 数据集的规模鸢尾花数据集共有150个样本,每一个样本有四个特征。

数据集被广泛应用于机器学习和模式识别领域,成为了分类问题的经典数据集之一。

2. 数据集的特征2.1 萼片长度和宽度萼片是鸢尾花的外部结构之一,其长度和宽度是鸢尾花的重要特征之一。

通过测量萼片的长度和宽度,可以判断鸢尾花的种类。

2.2 花瓣长度和宽度花瓣是鸢尾花的另一个重要特征,其长度和宽度也可以用于鸢尾花的分类。

不同种类的鸢尾花在花瓣的长度和宽度上有一定的差异。

2.3 特征之间的关系鸢尾花数据集中的四个特征之间存在一定的相关性。

例如,花瓣的长度和宽度往往呈正相关关系,而萼片的长度和宽度则没有明显的相关性。

3. 数据集的应用3.1 机器学习算法的训练和评估鸢尾花数据集被广泛应用于机器学习算法的训练和评估。

研究人员可以利用该数据集进行分类算法的训练,并通过对算法的准确率、召回率等指标进行评估。

3.2 特征选择和降维鸢尾花数据集的特征丰富多样,可以用于特征选择和降维算法的研究。

通过对特征的选择和降维,可以提高分类算法的效果和运行效率。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集鸢尾花数据集是一种常用的机器学习数据集,用于分类问题的研究和实践。

该数据集包含了150个样本,每个样本都是一种鸢尾花的测量数据。

任务的目标是根据这些测量数据预测鸢尾花的种类。

数据集中的每个样本都有四个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度。

这些特征是以厘米为单位进行测量的。

此外,每个样本还有一个对应的类别标签,表示鸢尾花的种类。

数据集中包含了三种不同的鸢尾花:Setosa、Versicolor和Virginica,分别用数字0、1和2表示。

下面是数据集中的一些样本示例:样本1:花萼长度:5.1cm,花萼宽度:3.5cm,花瓣长度:1.4cm,花瓣宽度:0.2cm,类别:Setosa样本2:花萼长度:7.0cm,花萼宽度:3.2cm,花瓣长度:4.7cm,花瓣宽度:1.4cm,类别:Versicolor样本3:花萼长度:6.3cm,花萼宽度:3.3cm,花瓣长度:6.0cm,花瓣宽度:2.5cm,类别:Virginica鸢尾花数据集是一个经典的分类问题数据集,广泛应用于机器学习和模式识别的研究中。

它的特点是数据集简单明了,易于理解和使用,同时又具有一定的挑战性。

通过对这个数据集的研究和分析,可以帮助我们深入理解和掌握各种分类算法的原理和应用。

在实际的机器学习任务中,可以使用鸢尾花数据集作为训练集和测试集,构建和评估分类模型的性能。

常见的分类算法如决策树、支持向量机、逻辑回归等都可以在这个数据集上进行训练和测试。

通过对模型的训练和测试,可以得到模型在鸢尾花分类问题上的准确率、精确率、召回率等性能指标。

除了用于分类问题的研究,鸢尾花数据集还可以用于特征选择、特征提取和降维等任务。

通过对数据集的分析,我们可以了解到不同特征之间的相关性,进而选择最具有代表性和区分性的特征进行模型训练和预测。

同时,我们还可以利用降维技术,将数据集的维度降低,从而简化模型的复杂度和计算量。

总结来说,鸢尾花数据集是一个常用的机器学习数据集,用于分类问题的研究和实践。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集引言概述:鸢尾花数据集是机器学习领域中常用的一个数据集,由英国统计学家Fisher于1936年收集整理而成。

该数据集包含了三个不同种类的鸢尾花的测量数据,是分类问题中的经典案例。

本文将对鸢尾花数据集进行详细介绍和分析,以便读者更好地了解和应用该数据集。

一、数据集概述1.1 数据来源鸢尾花数据集是由Fisher在20世纪30年代通过对鸢尾花进行测量所得。

他收集了三个品种的鸢尾花,分别是山鸢尾(setosa)、变色鸢尾(versicolor)和维吉尼亚鸢尾(virginica)。

1.2 数据特征该数据集包含了150个样本,每个样本有四个特征,分别是花萼长度(sepal length)、花萼宽度(sepal width)、花瓣长度(petal length)和花瓣宽度(petal width)。

这些特征用于描述鸢尾花的形态特征。

1.3 数据标签每个样本都有一个标签,用于表示鸢尾花的品种。

标签分为三类,分别对应三个品种:0代表山鸢尾,1代表变色鸢尾,2代表维吉尼亚鸢尾。

二、数据集的应用2.1 机器学习算法训练鸢尾花数据集作为一个经典的分类问题案例,常被用于机器学习算法的训练和测试。

通过对样本数据的学习,算法可以根据鸢尾花的特征来预测其所属的品种,从而实现分类任务。

2.2 特征选择和提取对鸢尾花数据集进行特征选择和提取,可以帮助我们识别出对分类任务最具有区分性的特征。

通过对特征的分析和比较,我们可以选择出最重要的特征,提高分类模型的准确性和效果。

2.3 数据可视化鸢尾花数据集的特征维度较低,可以方便地进行数据可视化。

通过绘制散点图、箱线图等图表,我们可以直观地观察到不同品种鸢尾花在特征上的分布情况,进一步了解其特征之间的关系。

三、数据集的分析3.1 数据分布情况通过统计和可视化分析,我们可以了解鸢尾花数据集中各个品种的样本数量分布情况。

这有助于我们判断数据集是否存在类别不平衡的问题,并采取相应的处理措施。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集鸢尾花数据集是一份经典的机器学习数据集,常用于分类问题的训练和测试。

该数据集由英国统计学家和生物学家罗纳德·费舍尔于1936年收集整理,用于研究鸢尾花的分类。

数据集中包含了150个样本,每个样本有四个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度。

根据这四个特征,每个样本被分为三个类别:山鸢尾(Iris-setosa)、变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica)。

下面是对鸢尾花数据集的详细描述:1. 数据集的结构:- 数据集中共有150个样本,每个样本有四个特征和一个类别标签。

- 特征包括花萼长度(sepal length)、花萼宽度(sepal width)、花瓣长度(petal length)和花瓣宽度(petal width)。

- 类别标签为山鸢尾(Iris-setosa)、变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica)。

- 数据集中的样本按照类别均匀分布,每个类别包含50个样本。

2. 数据集的用途:- 鸢尾花数据集是机器学习领域中最经典的数据集之一,常用于分类算法的训练和测试。

- 通过对鸢尾花数据集的训练,可以建立一个分类模型,用于预测新样本的类别。

3. 数据集的特点:- 鸢尾花数据集是一个相对较小的数据集,适合用于初学者学习和研究。

- 数据集中的特征值是数值型的,可以直接作为输入特征。

- 数据集中的类别标签是离散型的,需要进行编码转换为数值型。

4. 数据集的统计信息:- 对于每个特征,可以计算其均值、标准差、最小值、最大值等统计信息。

- 对于类别标签,可以计算每个类别的样本数量、样本占比等统计信息。

5. 数据集的可视化:- 可以使用散点图、箱线图等图表来展示不同类别样本在各个特征上的分布情况。

- 可以使用柱状图、饼图等图表来展示不同类别的样本数量占比。

6. 数据集的预处理:- 可以对数据集进行特征缩放,例如使用标准化或归一化等方法,使得特征具有相同的尺度。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集鸢尾花数据集是机器学习领域中常用的数据集之一,被广泛应用于分类算法的训练和测试。

本文将介绍鸢尾花数据集的背景和特点,并详细阐述其数据结构、数据预处理、特征选择、模型训练和性能评估等五个方面的内容。

引言概述:鸢尾花数据集是由英国统计学家Fisher于1936年采集整理的,用于研究鸢尾花的分类问题。

该数据集包含了150个样本,每一个样本包括了鸢尾花的四个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度。

根据鸢尾花的品种不同,数据集中的样本被分为三个类别:Setosa、Versicolor和Virginica。

鸢尾花数据集成为了机器学习领域中最经典的分类问题之一,被广泛应用于各种分类算法的研究和评估。

一、数据结构:1.1 样本数量:鸢尾花数据集共包含150个样本,每一个样本对应一朵鸢尾花。

1.2 特征维度:每一个样本包含了四个特征,即花萼长度、花萼宽度、花瓣长度和花瓣宽度。

1.3 类别标签:根据鸢尾花的品种不同,数据集中的样本被分为三个类别:Setosa、Versicolor和Virginica。

二、数据预处理:2.1 缺失值处理:鸢尾花数据集中不包含缺失值,无需进行缺失值处理。

2.2 数据清洗:在数据预处理过程中,通常需要对异常值进行处理,以避免对模型训练的干扰。

2.3 特征缩放:由于鸢尾花数据集的特征具有不同的量纲,可以使用特征缩放方法(如标准化或者归一化)将其统一到相同的范围。

三、特征选择:3.1 相关性分析:通过计算特征与目标变量之间的相关系数,可以评估特征与分类结果的相关性,选择相关性较高的特征进行模型训练。

3.2 特征重要性评估:使用一些特征选择算法(如决策树、随机森林等)可以评估每一个特征对模型性能的贡献程度,从而选择重要的特征。

3.3 嵌入式方法:一些机器学习算法本身就具备特征选择的能力,如L1正则化的逻辑回归模型,可以自动选择重要的特征。

四、模型训练:4.1 模型选择:根据鸢尾花数据集的特点,可以选择适合分类问题的算法,如逻辑回归、支持向量机、决策树等。

鸢尾花数据集

鸢尾花数据集

鸢尾花数据集标题:鸢尾花数据集的特点与应用引言概述:鸢尾花数据集是机器学习领域中最经典的数据集之一,由英国统计学家罗纳德·费舍尔于1936年收集整理而成。

该数据集以鸢尾花的三个品种(山鸢尾、变色鸢尾和维吉尼亚鸢尾)的花萼长度、花萼宽度、花瓣长度和花瓣宽度作为特征,用于分类问题的研究。

本文将从数据集的特点、应用领域、数据分析方法、模型训练与评估以及未来发展等五个大点进行详细阐述。

正文内容:1. 数据集的特点1.1 多样性:鸢尾花数据集包含三个不同品种的鸢尾花,具有较高的多样性,能够在分类问题中提供更全面的信息。

1.2 数据量适中:鸢尾花数据集包含150个样本,每个样本有4个特征,数据量适中,既可以满足模型训练的需求,又能够减少计算成本。

1.3 数据质量高:鸢尾花数据集经过严格的数据收集和整理,数据质量高,没有缺失值和异常值,适合直接应用于机器学习算法的训练。

2. 应用领域2.1 物种分类:鸢尾花数据集最常见的应用是物种分类问题。

通过对花萼和花瓣的测量数据进行分析,可以使用机器学习算法对鸢尾花进行自动分类,为植物学研究提供便利。

2.2 特征选择:鸢尾花数据集的特征具有较高的相关性,可以用于特征选择算法的评估和比较,帮助研究者选择最具代表性的特征集合。

2.3 数据可视化:通过对鸢尾花数据集的可视化,可以直观地展示不同品种的鸢尾花在特征空间中的分布情况,为数据分析和模型训练提供可视化支持。

3. 数据分析方法3.1 数据预处理:鸢尾花数据集在使用前需要进行数据预处理,包括数据清洗、特征缩放和特征编码等步骤,以提高数据的质量和可用性。

3.2 特征工程:鸢尾花数据集的特征可以进一步进行特征工程,包括特征提取、特征构建和特征选择等方法,以提取更有用的特征信息。

3.3 模型选择与训练:鸢尾花数据集可以应用于各种机器学习算法,如逻辑回归、支持向量机和决策树等,通过交叉验证等方法选择最佳模型并进行训练。

4. 模型训练与评估4.1 数据集划分:鸢尾花数据集通常会将数据集划分为训练集和测试集,以评估模型在未知数据上的泛化能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

决策树DTC数据分析及鸢尾数据集分析一. 分类及决策树介绍1.分类分类其实是从特定的数据中挖掘模式,作出判断的过程。

比如Gmail邮箱里有垃圾邮件分类器,一开始的时候可能什么都不过滤,在日常使用过程中,我人工对于每一封邮件点选“垃圾”或“不是垃圾”,过一段时间,Gmail就体现出一定的智能,能够自动过滤掉一些垃圾邮件了。

这是因为在点选的过程中,其实是给每一条邮件打了一个“标签”,这个标签只有两个值,要么是“垃圾”,要么“不是垃圾”,Gmail就会不断研究哪些特点的邮件是垃圾,哪些特点的不是垃圾,形成一些判别的模式,这样当一封信的邮件到来,就可以自动把邮件分到“垃圾”和“不是垃圾”这两个我们人工设定的分类的其中一个。

分类学习主要过程如下:(1)训练数据集存在一个类标记号,判断它是正向数据集(起积极作用,不垃圾邮件),还是负向数据集(起抑制作用,垃圾邮件);(2)然后需要对数据集进行学习训练,并构建一个训练的模型;(3)通过该模型对预测数据集进预测,并计算其结果的性能。

2.决策树(decision tree)决策树是用于分类和预测的主要技术之一,决策树学习是以实例为基础的归纳学习算法,它着眼于从一组无次序、无规则的实例中推理出以决策树表示的分类规则。

构造决策树的目的是找出属性和类别间的关系,用它来预测将来未知类别的记录的类别。

它采用自顶向下的递归方式,在决策树的内部节点进行属性的比较,并根据不同属性值判断从该节点向下的分支,在决策树的叶节点得到结论。

决策树算法根据数据的属性采用树状结构建立决策模型,决策树模型常用来解决分类和回归问题。

常见的算法包括:分类及回归树(Classification And Regression Tree,CART),ID3 (Iterative Dichotomiser 3),C4.5,Chi-squared Automatic Interaction Detection(CHAID), Decision Stump, 随机森林(Random Forest),多元自适应回归样条(MARS)以及梯度推进机(Gradient Boosting Machine,GBM)。

决策数有两大优点:1)决策树模型可以读性好,具有描述性,有助于人工分析;2)效率高,决策树只需要一次构建,反复使用,每一次预测的最大计算次数不超过决策树的深度。

示例1:下面举两个例子,参考下面文章,强烈推荐大家阅读,尤其是决策树原理。

算法杂货铺——分类算法之决策树(Decision tree) - leoo2sk这个也是我上课讲述的例子,引用上面文章的。

通俗来说,决策树分类的思想类似于找对象。

现想象一个女孩的母亲要给这个女孩介绍男朋友,于是有了下面的对话:女儿:多大年纪了?母亲:26。

女儿:长的帅不帅?母亲:挺帅的。

女儿:收入高不?母亲:不算很高,中等情况。

女儿:是公务员不?母亲:是,在税务局上班呢。

女儿:那好,我去见见。

这个女孩的决策过程就是典型的分类树决策。

相当于通过年龄、长相、收入和是否公务员对将男人分为两个类别:见和不见。

假设这个女孩对男人的要求是:30岁以下、长相中等以上并且是高收入者或中等以上收入的公务员,那么这个可以用下图表示女孩的决策逻辑。

示例2:另一个课堂上的例子,参考CSDN的大神lsldd的文章,推荐大家阅读学习信息熵。

用Python开始机器学习(2:决策树分类算法)假设要构建这么一个自动选好苹果的决策树,简单起见,我只让他学习下面这4个样本:[python]view plain copy1.样本红大好苹果2.01113.11014.20105.3000样本中有2个属性,A0表示是否红苹果。

A1表示是否大苹果。

本例仅2个属性。

那么很自然一共就只可能有2棵决策树,如下图所示:示例3:第三个例子,推荐这篇文章:决策树学习笔记整理- bourneli决策树构建的基本步骤如下:1. 开始,所有记录看作一个节点;2. 遍历每个变量的每一种分割方式,找到最好的分割点;3. 分割成两个节点N1和N2;4. 对N1和N2分别继续执行2-3步,直到每个节点足够“纯”为止。

二. 鸢尾花卉Iris数据集在Sklearn机器学习包中,集成了各种各样的数据集,上节课讲述Kmeans使用的是一个NBA篮球运动员数据集,需要定义X多维矩阵或读取文件导入,而这节课使用的是鸢尾花卉Iris数据集,它是很常用的一个数据集。

数据集来源:Iris plants data set - KEEL dataset该数据集一共包含4个特征变量,1个类别变量。

共有150个样本,鸢尾有三个亚属,分别是山鸢尾(Iris-setosa),变色鸢尾(Iris-versicolor)和维吉尼亚鸢尾(Iris-virginica)。

iris中文指鸢尾植物,这里存储了其萼片和花瓣的长宽,一共4个属性,鸢尾植物又分三类。

iris里有两个属性iris.data,iris.target。

data里是一个矩阵,每一列代表了萼片或花瓣的长宽,一共4列,每一列代表某个被测量的鸢尾植物,一共采样了150条记录。

代码如下:[python]view plain copy1.#导入数据集iris2.from sklearn.datasets import load_iris4.#载入数据集5.iris=load_iris()6.#输出数据集7.print iris.data输出如下所示:[python]view plain copy1.[[5.1 3.5 1.40.2]2.[4.93. 1.40.2]3.[4.7 3.2 1.30.2]4.[4.6 3.1 1.50.2]5.[5. 3.6 1.40.2]6.[5.4 3.9 1.70.4]7.[4.6 3.4 1.40.3]8.[5. 3.4 1.50.2]9.[4.4 2.9 1.40.2]10.....11.[6.7 3. 5.2 2.3]12.[6.3 2.5 5. 1.9]13.[6.5 3. 5.2 2.]14.[6.2 3.4 5.4 2.3]target是一个数组,存储了data中每条记录属于哪一类鸢尾植物,所以数组的长度是150,数组元素的值因为共有3类鸢尾植物,所以不同值只有3个。

种类:Iris Setosa(山鸢尾)Iris Versicolour(杂色鸢尾)Iris Virginica(维吉尼亚鸢尾)[python]view plain copy1.#输出真实标签2.print iris.target3.print len(iris.target)4.#150个样本每个样本4个特征5.print iris.data.shape输出结果如下:[python]view plain copy1.[00000000000000000000000000000000000002.00000000000001111111111111111111111113.11111111111111111111111111222222222224.22222222222222222222222222222222222225.22]6.1507.(150L,4L)可以看到,类标共分为三类,前面50个类标位0,中间50个类标位1,后面为2。

下面给详细介绍使用决策树进行对这个数据集进行测试的代码。

三. 决策树实现鸢尾数据集分析1. DecisionTreeClassifierSklearn机器学习包中,决策树实现类是DecisionTreeClassifier,能够执行数据集的多类分类。

输入参数为两个数组X[n_samples,n_features]和y[n_samples],X为训练数据,y为训练数据的标记数据。

DecisionTreeClassifier构造方法为:[python]view plain copy1.sklearn.tree.DecisionTreeClassifier(criterion='gini'2.,splitter='best'3.,max_depth=None4.,min_samples_split=25.,min_samples_leaf=16.,max_features=None7.,random_state=None8.,min_density=None9.,compute_importances=None10.,max_leaf_nodes=None)鸢尾花数据集使用决策树的代码如下:[python]view plain copy1.#-*-coding:utf-8-*-2."""4.5.@author:杨秀璋6."""7.8.#导入数据集iris9.from sklearn.datasets import load_iris10.11.#载入数据集12.iris=load_iris()13.14.print iris.data#输出数据集15.print iris.target#输出真实标签16.print len(iris.target)17.print iris.data.shape#150个样本每个样本4个特征18.19.20.#导入决策树DTC包21.from sklearn.tree import DecisionTreeClassifier22.23.#训练24.clf=DecisionTreeClassifier()26.print clf27.28.#预测29.predicted=clf.predict(iris.data)30.31.#获取花卉两列数据集32.X=iris.data33.L1=[x[0]for x in X]34.print L135.L2=[x[1]for x in X]36.print L237.38.#绘图39.import numpy as np40.import matplotlib.pyplot as plt41.plt.scatter(L1,L2,c=predicted,marker='x')#cmap=plt.cm.Paired42.plt.title("DTC")43.plt.show()输出结果如下所示,可以看到分位三类,分别代表数据集三种鸢尾植物。

2.代码优化在课堂上我讲过,这里存在两个问题:1.前面鸢尾Iris数据集包括四个特征(萼片长度、萼片宽度、花瓣长度、花瓣宽度),上面代码中"L1 = [x[0] for x in X]"我获取了第一列和第二列数据集进行的绘图,而真是数据集中可能存在多维特征,那怎么实现呢?这里涉及到一个降维操作,后面会详细介绍。

相关文档
最新文档