数据探索大致流程

数据探索大致流程

1.什么是EDA

  • 在拿到数据后,首先要进行的是数据探索分析(Exploratory Data Analysis),它可以有效的帮助我们熟悉数据集,了解数据集。初步分析变量间的相互关系以及变量与预测值之间的关系,并且对数据进行初步处理,如:数据的异常和缺失处理等,以便使数据集的结构和特征让接下来的预测问题更加可靠
  • 数据探索分析还可以
    • 获得有关数据清理的宝贵灵感(缺失值处理,特征降维…)
    • 获得特征工程的启发
    • 获得对数据集的感性认识
  • 意义
    • 数据决定了问题能够被解决的最大上限,而模型只决定如何逼近这个上限

EDA流程

1.载入数据并简略观察数据

2.总览数据概况

  • describe中每一列的统计量,均值,标准差,最小值,中位数25%,50%,75%以及最大值,可以帮助我们快速掌握数据的大概范围和数据的异常判断
  • info可以了解每列的type和是否存在缺失数据
  • 通过isnull().sum()查看每列缺失情况

3.通过describematplotlib可视化查看数据的相关统计量(柱状图)

  • 重点查看方差为0或者极低的特征

在这里插入图片描述

在这里插入图片描述

4.缺失值处理

  • 删除
  • 中位数填充
  • 均值填充

5.查看目标数据的分布

  • 重点查看是否有

    • 分类:类别分布不均衡

      • 可以考虑使用过抽样处理
    • 回归:离群点数据

      • 可以考虑将离群点数据去除
  • 离群点数据

    • 存在着一些特别大或者特别小的值,这些可能是离散点或记录错误的点,对我们的结果有一些影响,需要将离散点数据进行过滤
    • 离散点:指的是一个数据序列中,远离序列的一般水平的极端大致和极端小值,且这些会对整个数据的分析产生异常的影响
  • 离散点过滤方式

    • q1-3*iq:q1为序列中25%的中位数,iqq3-q1
    • q3+3*iq:q3为序列中75%的中位数,iqq3-q1
  • 离散点判定:

    • 极小的离散点数据x<(q1-3*iq)
    • 极大的离散点数据x>(q3+3*iq)
      在这里插入图片描述
    q1=data['Site EUI (kBtu/ft²)'].describe()['25%']
    q3=data['Site EUI (kBtu/ft²)'].describe()['75%']
    iq=q3-q1
    #过滤极大离散点和极小离散点数据
    data_copy=data[(data['Site EUI (kBtu/ft²)']>(q1-3*iq)) & (data['Site EUI (kBtu/ft²)']<(q3+3*iq))]
    

6.特征分布

  • 绘制数字特征分布(直方图)

    • 可以观察特征为连续性还是离散型特征
    • 可以观测特征数据的分布
    • 是否有离群点
      在这里插入图片描述
  • 绘制类别特征的分布(柱状图)

    • 查看该特征中是否有稀疏类,在构建模型时,稀疏泪往往会出现问题,但不是绝对的,如果当前特征比较重要则可以将特征的稀疏类数据删除

在这里插入图片描述

7.查看特征与特征之间的相关性(热力图)

  • 相关性强的特征就是冗余特征,可以考虑删除,通常认为相关系数大于0.5为强相关

8.查看数据和目标的相关性,正负相关性越强则特征对结果影响的权重越高,特征越重要

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荼靡~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值