前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >在Python中进行探索式数据分析(EDA)

在Python中进行探索式数据分析(EDA)

作者头像
deephub
发布于 2020-05-09 08:48:20
发布于 2020-05-09 08:48:20
3.3K0
举报
文章被收录于专栏:DeepHub IMBADeepHub IMBA

探索性数据分析(Exploratory Data Analysis ,EDA)是对数据进行分析并得出规律的一种数据分析方法。它是一个数据试图讲述的故事。EDA是一种利用各种工具和图形技术(如柱状图、直方图等)分析数据的方法。

根据Tukey的说法(1961年的资料分析)

“分析数据的程序,解释此类程序结果的技术,计划数据收集以使其分析更容易,更精确或更准确的方法,以及适用于分析数据的(数学)统计的所有机制和结果。”

Python中的EDA

在python中有很多可用的库,例如pandas,NumPy,matplotlib,seaborn等。借助这些库,我们可以对数据进行分析并提供有用的见解。我将同时使用这些库和Jupyter Notebook。

数据集介绍

我使用的数据集是“汽车”数据集,它具有汽车的不同特征,例如型号,年份,发动机和其他属性以及价格。它具有1990年至2017年的28年数据。

数据集地址:https://www.kaggle.com/CooperUnion/cardataset

数据描述

本文的目的是探索数据并为建模做好准备。

让我们开始吧!!!

Python中的探索性数据分析

首先,我们将导入EDA(探索性数据分析)所需的所有库。这是要做的第一件事也是最重要的事情。如果不导入库,我们将无法执行任何操作。

导入库

数据加载

导入库后,下一步是将数据加载到数据框中。要将数据加载到数据框中,我们将使用pandas库。它支持各种文件格式,例如逗号分隔值(.csv),excel(.xlsx,.xls)等。

要读取数据集,可以将数据文件存储在同一目录中并直接读取,或者在读取数据时提供数据文件所在数据文件的路径。

前5行

现在,数据已加载。让我们检查数据集的前5行。

根据以上结果,我们可以看到python中的索引从0开始。

底部5行

要检查数据框的维数,让我们检查数据集中存在的行数和列数。

数据形状

数据集中共有11914行和16

数据集的简明信息

现在,检查数据类型以及数据集中所有变量的摘要。它包括存在的非空值的数量。

如果变量中存在字符串,则数据类型将作为对象存储。另外,如果数据分别具有数值和十进制值,则它将为int或float。MSRP(汽车价格)存储为int数据类型,而Driven_wheels存储为对象数据类型。

以上结果表明,许多变量(例如发动机燃料类型,发动机HP,发动机汽缸,门数和市场类型)在数据中缺少值。

我们可以通过另一种方法检查数据类型:

打印数据集的列

由于列的名称很长,让我们重命名它们。

重命名列

删除列

删除数据框不需要的列。数据中的所有列不一定都相关。在这个数据中,受欢迎程度、门的数量、车辆大小等列不太相关。所以从数据集中删除这些变量。

缺失值:

上述结果表明,在12个变量中,Fuel_type、HP和cylinder这3个变量有缺失值。

让我们检查一下列中缺失数据的百分比

有许多方法可以处理这些缺失的值。

  1. 1. 删除
  2. 2. 插补

我们可以删除存在缺失值的行,也可以将缺失值替换为平均值,中位数或众数等值。

由于丢失的数据百分比非常少,我们可以从数据集中删除那些行。

默认情况下,如果任何变量的值缺失,则drop函数将删除整行。

删除缺失值之后,现在缺失值的计数为0。这意味着数据集中不存在缺失值。

删除缺失值后,检查存在的行数。

原来的行数是11914,现在剩下的行数是11813。

统计摘要

现在,让我们找出数据集的统计总结或五点总结。五点总结给出描述性总结,包括每个变量的均值、中位数、众数、编号、行数、最大值和最小值。

对于具有对象数据类型变量的Mean, standard deviation, max, and percentile values设为NaN 。

对于具有int数据类型变量的 unique, top, frequency设为NaN 。

从描述摘要得出,共有47种车和904款车型。数据显示雪佛兰拥有最多的11115辆汽车。该车的平均价格为40581.5美元。价格的第50 百分位数或中位数是29970。价格的平均值和中位数之间存在巨大差异。这说明价格变量高度偏斜,我们可以使用直方图直观地进行检查。

数据可视化

顾名思义,数据可视化是使用各种类型的图,图形等观察数据。各种图包括直方图,散点图,箱线图,热图等。我们将使用matplotlib和seaborn一起可视化一些变量

直方图(分布图)

直方图用于显示数值变量的形状和分布。对于类别变量,它显示变量中存在的类别计数。

从两个直方图中都可以看出,HP变量分布很均匀。它有点向右倾斜。这意味着它有些偏右,但分布正常。但是,价格变量高度偏斜。

分类变量的直方图

这是“ 制造变量” 的计数图。每个条形图都显示数据集中存在的类别计数。

离群值检查

离群值是与其他值或观察值明显不同的值。离群值会在建模中产生重大问题。因此,有必要找到异常值并对其进行处理。

异常值可以使用箱线图进行检测。箱线图使用四分位数描述变量分布。它也被称为盒须图。

以上所有箱线图显示,price和c_mpg变量中存在许多异常值。在Cylinders变量中,只有4个观测值是异常值。

根据箱形图,超出Q1(25个百分位数)和Q3(75个百分位数)或IQR(四分位数间距)范围之外的任何观测值均被视为异常值。

如果数据集中存在大量异常值,则必须对异常值进行处理。像地板,封盖之类的方法可用于估算离群值。

相关图

计算相关系数,找出两个变量之间的关系强度。相关范围从-1到1。-1相关值为强负相关,1为强正相关。0表示两个变量之间没有关系。

从以上的相关图中可以看出,有很多变量之间是紧密相关的。例如,c_mpg与h_mpg之间的相关值为0.85,接近于1。这意味着他们之间有很强的正相关关系。同理,Cylinders和c_mpg呈负相关。

散点图

使用Pairplot找出变量之间的关系。它绘制每个变量之间的散点图。散点图也可以单独使用。而pairplot将给出一行中所有数值变量之间的关系图。

尾注

以上所有步骤都是EDA的一部分。这不是EDA的终点。上面执行的所有步骤都是在进行特征工程或建模之前必须执行的基础数据分析。

EDA是整个数据科学过程中的重要步骤之一。据说模型构建大部分时间都用于EDA和特征工程。如果您想从数据中获取大量的信息,则需要进行大量的EDA。

作者:Manorama Yadav deephub翻译组:gkkkkkk

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DeepHub IMBA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python数据分析之数据探索分析(EDA)
何为EDA,何谓探索性数据分析?英文名为Exploratory Data Analysis,是在你拿到数据集后,并不能预知能从数据集中找到什么,但又需要了解数据的基本情况,为了后续更好地预处理数据、特征工程乃至模型建立。因此探索性数据分析,对了解数据集、了解变量之间对相互关系以及变量与预测值之间的关系尤其重要。
数据STUDIO
2021/06/24
3.9K0
Python数据分析与实战挖掘
基础篇 书推荐:《用python做科学计算》 扩展库 简介 Numpy数组支持,以及相应的高效处理函数 Scipy矩阵支持,以及相应的矩阵数值计算模块 Matplotlib强大的数据可视化工具、作图库 Pandas强大、灵活的数据分析和探索工具 StatsModels 统计建模和计量经济学,包括描述统计、统计模型估计和推断 Scikit-Learn支持回归、分类、聚类等的强大机器学习库 Keras深度学习库,用于建立神经网络以及深度学习模型 Gensim 文本主题模型的库,文本挖掘用 ----- 贵阳大
企鹅号小编
2018/02/07
3.8K0
Python数据分析与实战挖掘
干货:用Python进行数据清洗,这7种方法你一定要掌握
导读:数据清洗是数据分析的必备环节,在进行分析过程中,会有很多不符合分析要求的数据,例如重复、错误、缺失、异常类数据。
IT阅读排行榜
2018/12/18
10.7K0
《python数据分析与挖掘实战》笔记第3章
数据质量分析是数据挖掘中数据准备过程的重要一环,是数据预处理的前提,也是数据挖掘分析结论有效性和准确性的基础,没有可信的数据,数据挖掘构建的模型将是空中楼阁。
周小董
2021/03/03
2.3K0
汽车分析,随时间变化的燃油效率
在当今快速发展的科技时代,汽车不仅是交通工具,更是科技和工程的结晶。随着社会对可持续性和环境友好的关注不断增加,燃油效率成为汽车设计和制造中的一个关键议题。一辆车的燃油效率不仅关系到驾驶者的经济负担,还直接影响到环境的可持续性。本文将深入分析汽车燃油效率,并着眼于这一指标随着时间的推移所经历的变化。通过揭示背后的技术创新、市场趋势以及制度变革,我们将追溯汽车燃油效率的发展历程,以期带领读者深入了解这个引人注目的领域。
老虎也淘气
2024/01/30
2770
汽车分析,随时间变化的燃油效率
图解数据分析 | 数据清洗与预处理
教程地址:http://www.showmeai.tech/tutorials/33
ShowMeAI
2022/02/25
1.2K0
图解数据分析 | 数据清洗与预处理
R语言数据挖掘实战系列(3)
        通过检验数据集的数据质量、绘制图表、计算某些特征量等手段,对样本数据集的结构和规律进行分析的过程就是数据探索。
py3study
2020/01/08
1.1K0
快速提高Python数据分析速度的八个技巧
今天整理了几个在使用python进行数据分析的常用小技巧、命令。记得搭配Pandas+Jupyter Notebook使用哦。
刘早起
2020/04/22
1.1K0
【慕ke】商业数据分析师-基础必学
数据分析是通过统计和逻辑方法对数据进行检验和转换,以揭示有用信息、得出结论并支持决策的过程。数据分析的主要步骤包括数据获取、数据清洗、数据探索性分析(EDA)、数据建模和数据可视化。
用户11119667
2024/06/25
1550
【应用】信用评分:第3部分 - 数据准备和探索性数据分析
因此,**数据准备是任何数据挖掘项目的关键方面,包括信用评分卡的开发。 **这是CRISP-DM周期中最具挑战性和耗时的阶段。 项目总时间中至少70%,有时多于90%专门用于此项活动。 它涉及数据收集,结合多个数据源,聚合,转换,数据清理,“切片和切块”,并查看数据的广度和深度,以获得清晰的理解并将数据量转换为数据质量,从而使我们 可以自信地准备下一阶段 - 模型建设。
陆勤_数据人网
2018/07/30
5280
【应用】信用评分:第3部分 - 数据准备和探索性数据分析
数据的探索性(EDA)分析
这里主要是对读取的数据有一个大致的了解,包括简单了解数据的行列信息,数据的统计特征等
mathor
2020/03/25
1.1K0
数据的探索性(EDA)分析
一个完整的机器学习项目在Python中的演练(一)
编译 | 磐石 出品 | 磐创AI技术团队 【磐创AI导读】:本文是机器学习实战项目演连系列第一篇,主要介绍了数据清洗与EDA两个部分。欢迎大家点击上方蓝字关注我们的公众号:磐创AI。 大家往往会选择一本数据科学相关书籍或者完成一门在线课程来学习和掌握机器学习。但是,实际情况往往是,学完之后反而并不清楚这些技术怎样才能被用在实际的项目流程中。就像你的脑海中已经有了一块块”拼图“(机器学习技术),你却不知道如何讲他们拼起来应用在实际的项目中。如果你也遇见过同样的问题,那么这篇文章应该是你想要的。本系列文章将
磐创AI
2018/07/03
1.4K0
Python入门与数据分析
在数据科学领域,Python被广泛使用,因为它不仅易于学习,而且具有强大的数据分析库和工具。学习Python进行数据分析时,常常需要掌握数据清洗、分析和可视化等关键技能。本文将详细介绍Python入门与数据分析的基础知识,涵盖数据清洗、分析以及可视化的常用方法和技巧,并通过具体示例帮助理解。
LucianaiB
2025/01/13
1390
足球- EDA的历史数据分析并可视化
在足球世界中,背后隐藏着丰富的数据宝藏,记录着球队的兴衰、球员的崛起与衰落,以及比赛瞬息万变的情境。随着数据科学的崛起,越来越多的数据被收集并变得容易访问,为足球爱好者和专业分析师提供了深入了解这个美妙运动的机会。
老虎也淘气
2024/01/30
2880
足球- EDA的历史数据分析并可视化
数据缺失、混乱、重复怎么办?最全数据清洗指南让你所向披靡
在拟合机器学习或统计模型之前,我们通常需要清洗数据。用杂乱数据训练出的模型无法输出有意义的结果。
机器之心
2020/04/22
2.8K0
数据缺失、混乱、重复怎么办?最全数据清洗指南让你所向披靡
python数据分析——数据预处理
数据预处理是数据分析过程中不可或缺的一环,它的目的是为了使原始数据更加规整、清晰,以便于后续的数据分析和建模工作。在Python数据分析中,数据预处理通常包括数据清洗、数据转换和数据特征工程等步骤。
鲜于言悠
2025/03/08
4870
python数据分析——数据预处理
特征工程系列:数据清洗
关于作者:JunLiang,一个热爱挖掘的数据从业者,勤学好问、动手达人,期待与大家一起交流探讨机器学习相关内容~
木东居士
2019/08/01
2.4K0
特征工程系列:数据清洗
独家 | 自动化探索性因素分析(EDA)来更快更好地理解数据
EDA是我们更好地理解数据集的重要方式之一。几乎所有的数据分析和数据科学专家都在产生新观点或者数据建模之前先做EDA。在现实生活中,依赖于数据集的复杂度和完整性,这个过程会花费大量时间。当然,变量越多,我们在下一步开始前就需要探索越多才能获得结论。
数据派THU
2023/11/13
3670
独家 | 自动化探索性因素分析(EDA)来更快更好地理解数据
数据分析秘籍在这里:Kaggle 六大比赛最全面解析(上)
AI 研习社按,Kaggle 上有各式各样的数据挖掘类比赛,很多参赛者也乐于分享自己的经验,从他人的经验中进行总结归纳,对自己的实践也非常重要。
AI研习社
2018/07/26
1.3K0
数据分析秘籍在这里:Kaggle 六大比赛最全面解析(上)
安利3个Python数据分析EDA神器!
EDA是数据分析必须的过程,用来查看变量统计特征,可以此为基础尝试做特征工程。东哥这次分享3个EDA神器,其实之前每一个都分享过,这次把这三个工具包汇总到一起来介绍。
Python数据科学
2020/11/11
1.4K0
安利3个Python数据分析EDA神器!
推荐阅读
相关推荐
Python数据分析之数据探索分析(EDA)
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档