基于Python语言Kaggle的数据集分析

2019-05-13 09:54段聪聪柴世一
科技视界 2019年8期
关键词:维吉尼亚花萼鸢尾花

段聪聪 柴世一

【摘 要】本文基于python来进行对kaggle数据集库中的数据集来进行数据分析,在这个大数据时代,我们的生活早已成为一个数据化的生活,文章的目的是在于用现有的计算机科学技术来预示通过数据分析来进行预判的可行性。

【关键词】python程序设计与开发;数据分析;特征选择

中图分类号: TP311.13文献标识码: A文章编号: 2095-2457(2019)08-0106-001

DOI:10.19694/j.cnki.issn2095-2457.2019.08.044

【Abstract】This paper is based on Python to analyze the data set in kaggle databases.In this big data era, our life has already become a data life. The purpose of this paper is to use the existing computer science technology to predict the feasibility of data analysis.

【Key words】Python Programming and development;Data analysis;Feature selection

1 简介

数据集名称为iris.csv,该数据由kaggle网站获取而来,数据集的规模为150*6,总计150条数据,数据信息分为6列,列属性名分别为Id,SepaLength,SepalWidth,PetalLength,PetalWidth,Species.

我们希望利用python语言对数据集中的特征来进行分析,最后可以根据分析结果来较为准确的根据鸢尾花四个属性判断出其所属类别。

2 数据处理

查看数据集

Id显示为整数类型,之后的是个花瓣花萼长宽均为小数点后一位的小数类型,而Species则为字符串类型,对应着某一行数据所属鸢尾花的类别

从数据集中可看出

花萼长度最小值4.30, 最大值7.90, 均值5.84, 中位数5.80, 右偏

花萼宽度最小值2.00, 最大值4.40, 均值3.05, 中位数3.00, 右偏

花瓣长度最小值1.00, 最大值6.90, 均值3.76, 中位数4.35, 左偏

花瓣宽度最小值0.10, 最大值2.50, 均值1.20, 中位数1.30, 左偏

按中位数来度量:花萼长度大于花瓣长度大于花萼宽度大于花瓣宽度

当该条数据鸢尾花类别为setosa时,我们让它在图中的点的颜色为红色,versicolor为绿色,virginica为蓝色。通过这样的设置可以在散点图中明显的看出三种种类鸢尾花与属性之间的关系。考虑到有四种属性,我们让他们来两两相交,选择了四组属性来进行测试:分别是品种与花萼长度宽度,品种与花瓣长度宽度,品种与花瓣宽度花萼宽度,品种与花瓣长度花萼长度,这是四组具有参考价值的属性值。

实验结果显示山鸢尾的属性值和杂色鸢尾,维吉尼亚鸢尾范围有明显的差距,而杂色鸢尾和维吉尼亚鸢尾存在属性值范圍的重叠。

接下来我们想对于鸢尾花三种种类的四个属性的值范围有一个较为直观的显示,于是我们采用绘制四个图形的方式来进行显示,以ID为X轴(因为在数据集中ID属性的值前50个、中间50个、最后50个分别代表不同的鸢尾花),以四个属性为Y轴,最后以不同的颜色来明确区分三种鸢尾花的四个属性值的范围。

使用seaborn模块的relplot方法来绘制图形,函数中的kind属性值设置为line表示我们要绘制的是折线图。然后传入X和Y轴的参数以及数据集对象。

实验结果显示在花瓣长度和宽度上,山鸢尾的属性范围与其他两种鸢尾花的属性范围有非常明显的区分,处于一个较小的范围内,花瓣与分辨山鸢尾有较强的相关性。而在花萼的折线图中我们看出,杂色鸢尾和维吉尼亚鸢尾没有很好的区分出,这表示,花萼不能很好作为参数来区分他们,相比较而言,花瓣的属性值更有利于区分他们。

首先我们将数据集按照8:2的比例随机分为训练集, 测试集。我们使用SVM模型来对数据集进行一个预测。

由此可见,该数据集根据SVM模型来判断种类,正确率高达100%,可见,鸢尾花的种类和其四个属性值之间存在着一定的相关性,到了这一步我们也可以做出结论,的确可以根据鸢尾花的四个属性判断其种类,我们所建立的SVM模型也证实了这一点。

为了验证上一步的准确性,我们想用两个模型进行验证结论,在构建决策树模型后的准确率也是100%,我们可以得出结论:可以通过鸢尾花的四个属性值来判断其种类。

3 分析结果

回到我们最初的目标,我们希望通过鸢尾花的四个属性值来判别其种类,我们通过散点图来进行可视化分析,根据四种属性的交叉显示,我们得出,鸢尾花的类别与属性之间存在一定的关系且山鸢尾的属性值和杂色鸢尾,维吉尼亚鸢尾范围有明显的差距,而杂色鸢尾和维吉尼亚鸢尾存在属性值范围的重叠。

之后通过折线图更加具体地显示三种鸢尾花的属性值范围情况,在花瓣长度宽度上,山鸢尾的属性范围与其他两种鸢尾花的属性范围有非常明显的区分,处于一个较小的范围内,花瓣与分辨山鸢尾有较强的相关性。而在花萼的折线图中我们看出,杂色鸢尾和维吉尼亚鸢尾没有很好的区分出,这表示对于这两种鸢尾花而言,花瓣的属性值更有利于区分他们。

4 结束语

由于鸢尾花数据集的数据量太少,这导致我们的训练集远远不够,在调节随机数参数的情况下才将模型的正确率达到了100%,解决的方法是:使用小数据集训练卷积神经网络并加以微调,微调对于没有足够训练样本时初始化深度网络参数的一个有效的方法,一般都会选取与之具有相似结构的网络模型训练结果进行微调。

【参考文献】

[1]郭华,陆平.利用python语言对室内热舒适环境进行数据分析[J].建筑与文化,2018(12).

[2]周洪斌.基于Python的豆瓣图书评论数据获取与可视化分析[J].沙洲职业工学院学报2018,21(04).

[3]翟高粤.基于Python的数据分析概述[J].甘肃科技纵横,2018,47(11).

[4]叶惠仙.Python在学院招生数据分析中的应用[J].计算机时代,2018(11).

[5]王涛.基于Pyhton的软件技术人才招聘信息分析与实现——以前程无忧为例[J].福建电脑,2018,34(11).

猜你喜欢
维吉尼亚花萼鸢尾花
兄弟相亲似“花萼”
鸢尾花观察日记
《小房子》
鸢尾花
鸢尾花开
不同处理的紫藤花萼中黄色素提取及理化性质研究