python EDA_Python 探索性数据分析 EDA

在做数据建模或者是数据挖掘的过程中都需要对数据做一些探索性的分析,所谓的探索性数据分析主要是对数据的整体规模有一个大致了解,主要包括但不限于记录数、特征数、特征的数据类型、数据缺失情况、数据的整体分布情况(单变量的分布及多变量的分布)、数据的相关性情况等,下面分别从这几个方面介绍一下应用Python如何做EDA。

以泰坦尼克数据为样例进行探索性数据分析。

1、将数据导入到Python中

一般在Python中应用pandas库中的相应函数进行导入数据,这样导入的数据是一个DataFrame类型,方便后面的分析。

import 

2、查看数据的行列数、数据类型、数值型数据分布情况

查看行列数(记录数及特征数)

1eafd8806862369c30178a9031300f45.png

可以看出本数据集中有891条记录12个特征。

查看数据类型

5627cd21ec47667d9ab35d477805285d.png

可以看出本数据集中有int64、float64和object三种类型的变量,从这个图中同样能够看出存在缺失值的字段,个数少于891个的特征都是存在缺失的。

查看数值型数据规模

1f3f7a86317a30c431ea75df1a424047.png

图中只是展示了数值型变量规则及分布,主要展示了数量、均值、标准差、最小值、25%分位数、50%分位数、75%分位数和最大值等。

3、缺失值情况探查

缺失值情况探查主要是探查存在缺失值的字段及具体的缺失规模。

pandas库进行缺失探查

应用pandas库进行数据探查主要应用库中带的一些缺失值检测的函数,主要有isnull(),notnull()等。

6c608c521cc7d4a43512bc52c647c08d.png

从图中可以看出Age、Cabin和Embarked存在数据缺失,

missingno库进行缺失探查

missingno库主要用于对缺失值的展示,主要有三个函数missingno.bar(),missingno.matrix(),missingno.heatmap(),具体用户参见missingno官方。

6105ec0452842b30db215db88feb0d5a.png

图中白色的地方就是存在缺失值的地方,从图中可以看出Cabin字段存在大量的数据缺失。

4、数据整体分布情况分析

(1)单变量数据分析

a 、数值型数据分布情况

数值型数据分布最好以图的方式进行展示,这样能够直观形象的看出数据的整体分布情况。主要使用展示图有:直方图、箱线图、小提琴图等。

下面以Fare字段进行数据整体分布的展示

50cdeacf303f317bdf82faf755269947.png
直方图展示数值型数据的分布情况

1c4bb17f7d51e9073affc12d4ba8dec3.png
箱线图展示数值型数据的分布情况

5296394faeb17f7ef68a4bf73bb11d4f.png
小提琴图展示数值型数据的分布情况

b、分类型数据分布情况

分类型数据的分布情况探查主要是查看各个分类值出现的频次及趋势,可以直接应用pandas库中的value_counts()方法查看,同时也可以应用seaborn库中的图表进行查看。

value_counts方法

42f63cdde2f1a738c766df433e4599e9.png
value_counts方法查看分类型数据的分布情况

seaborn方法

63f251084a710cf43557aee038bcc463.png
计数图查看分类型数据分布

(2)多变量数据分布情况分析

多变量的数据分布探查主要查看数据之间的相互关系,比较常用的就是seaborn中的pairplot方法。

c02535667765af4389f172296c4404b3.png
pairplot多变量数据分布探查

5、数据相关性探查

数据相关性的探查一般都是通过查看皮尔逊相关系数确定数据之间是否存在相关性,但是这种相关性的确定有两个限制条件:1、只能确定数值型变量之间的关系;2、只能确定变量之间的是否线性相关。如果需要探查数据之间的是否存在非线性相关的时候就需要像斯皮尔曼相关系数等。

4833323908a66c83fe325f34f822e5d7.png
heatmap画相关系数热力图

注:本文只是简单的描述了一下初步数据探查的基本方法,后续还有很多地方需要不断完善的地方,比如异常值的检测、数值型变量与分类型变量的相关性分析等等,只有完全掌握了数据的整体分布才能继续后面的数据分析和挖掘工作。

本人能力有限,难免有错误或不足的地方,不吝赐教。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
探索性数据分析EDA)是数据分析的第一步,它帮助我们了解数据的基本情况,包括变量类型、分布、关系和缺失值等。在Python中进行探索性数据分析可以使用pandas库来导入和处理数据。\[1\] 在进行探索性数据分析时,我们可以按照以下步骤进行: 1. 数据导入:使用pandas库的read_csv函数导入数据集。 2. 检查数据:查看数据的基本信息,包括列名、数据类型和缺失值等。 3. 特征分析:对不同类型的变量进行分析,包括分类性变量、定序变量、连续型变量和离散型变量等。可以使用统计图表和描述统计等方法进行分析。 4. 相关性分析:通过计算变量之间的相关系数来了解它们之间的关系。 在进行探索性数据分析时,可以使用各种Python库和函数来辅助分析,例如pandas、matplotlib和seaborn等。\[2\] 需要注意的是,以上是一般的探索性数据分析步骤,具体的分析方法和技巧可以根据数据集的特点和分析目的进行调整和选择。\[1\] 总之,Python提供了丰富的工具和库来进行探索性数据分析,通过对数据的基本情况进行分析,我们可以为后续的模型建立和特征工程提供基础。\[1\] #### 引用[.reference_title] - *1* *2* [利用python进行探索性数据分析EDA):以Kaggle泰坦尼克号数据集为例](https://blog.csdn.net/weixin_45052363/article/details/124432266)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Python探索性数据分析](https://blog.csdn.net/m0_72829928/article/details/126772827)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值