爱锋贝

 找回密码
 立即注册

只需一步,快速开始

扫一扫,极速登录

查看: 525|回复: 5
收起左侧

预测二手车交易价格——数据清洗

[复制链接]

1427

主题

1523

帖子

6746

积分

Rank: 8Rank: 8

雷锋再世推广达人宣传达人灌水之王荣誉管理论坛元老

发表于 2022-2-16 22:52:16 | 显示全部楼层 |阅读模式

一键注册,加入手机圈

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
在经过前文序篇,和简单的EDA(工具)后,我们开始对数据做进一步处理——数据清洗:看一下数据清洗(Data cleaning)定义:
对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性
其实这里面就包含了上一节中提到的的五个问题中找出异常数据,并处理缺失值或者不平衡值,统一成数据为数值型(一致性)等问题。首先我们回顾一下数据变量类型分为Numerical(数值数据)和 Categorical(分类数据)
在这道题目中的数据,(很多已经做好脱敏转换成了数值数据)我总结了一个很好的步骤(checklist)来做数据清洗:
1.载入各种数据科学以及可视化库;2.载入数据:(载入训练集和测试集:(简略观察数据(head()+shape)));3.数据总览:(通过describe()来熟悉数据的相关统计量;通过info()来熟悉数据类型);4.判断数据缺失和异常(查看每列的存在Nan情况;异常值检测,注意:在这之前一定要将所有数据数值化)5.了解预测值的分布:(总体分布概况(无界约翰逊分布等);查看skewness and kurtosis;类别特征箱形图可视化;查看预测值的具体频数)6.特征分为类别特征和数字特征(对这些特征进行探索):(6.1并对类别特征查看unique分布;类别特征的小提琴图可视化;类别特征的柱形图可视化类别;特征的每个类别频数可视化(count_plot);6.2.数字特征分析:相关性分析;查看特征的偏度和峰值;每个数字特征的分布可视化;数字特征相互之间的关系可视化;多变量互相回归关系可视化)7. 直接用pandas_profiling生成数据报告
这是对代码的文字总结部分,看一下真正的结果和我实验做得代码部分吧,知乎内容有限我上传了代码附件作为记录,记录几个问题的思考。
我们一般会拿偏度和峰度来看数据的分布形态,而且一般会跟正态分布做比较,我们把正态分布的偏度和峰度都看做零。如果我们在实操中,算到偏度峰度不为0,即表明变量存在左偏右偏,或者是高顶平顶这么一说。偏度(Skewness)和峰度(Kurtosis)
Definition:偏度是描述数据分布形态的统计量,其描述的是某总体取值分布的对称性,简单来说就是数据的不对称程度。Definition:峰度是描述某变量所有取值分布形态陡缓程度的统计量,简单来说就是数据分布顶的尖锐程度
偏度是三阶中心距计算出来的。
(1)Skewness = 0 ,分布形态与正态分布偏度相同。
(2)Skewness > 0 ,正偏差数值较大,为正偏或右偏。长尾巴拖在右边,数据右端有较多的极端值。
(3)Skewness < 0 ,负偏差数值较大,为负偏或左偏。长尾巴拖在左边,数据左端有较多的极端值。
(4)数值的绝对值越大,表明数据分布越不对称,偏斜程度大。
| Skewness| 越大,分布形态偏移程度越大。
峰度是四阶标准矩计算出来的。
(1)Kurtosis=0 与正态分布的陡缓程度相同。
(2)Kurtosis>0 比正态分布的高峰更加陡峭——尖顶峰
(3)Kurtosis<0 比正态分布的高峰来得平台——平顶峰
然后需要注意的步骤有一点要对预测值的分布有一定的了解,当遇到不平衡使,可以使用log变换这样的trick去做处理
还有像这次比赛的特征是已经label coding好的特征,就是全是数字化特征了,类别特征都已经处理好了,所以这次需要人工把他们定义出来两类即数字特征和类别特征
箱形图用来看异常值,观察离群点;散点图用来观察是否存在线性关系
以上记录都是对数据清洗的一些方法的记录和使用方法,接下来总体总结一下,数据清洗可以主要分为三类,并介绍常用方法:
目的:提高数据质量,降低算法用错误数据建模的风险。


  • 特征变换:模型无法处理或不适合处理 a) 定性变量编码:Label Encoder;Onehot Encoder;Distribution coding; b) 标准化和归一化:z分数标准化(标准正太分布)、min-max 归一化;
  • 缺失值处理:增加不确定性,可能会导致不可靠输出 a) 不处理:少量样本缺失; b) 删除:大量样本缺失; c) 补全:(同类)均值/中位数/众数补全;高维映射(One-hot);模型预测;最邻近补全; 矩阵补全(R-SVD);
  • 异常值处理:减少脏数据 a) 简单统计:如 describe() 的统计描述;散点图等; b) 3∂ 法则(正态分布)/箱型图截断; c) 利用模型进行离群点检测:聚类、K近邻、One Class SVM、Isolation Forest;
  • 其他:删除无效列/更改dtypes/删除列中的字符串/将时间戳从字符串转换为日期时间格式等

-----------------------------
精选高品质二手iPhone,上爱锋贝APP

0

主题

48

帖子

3

积分

Rank: 1

发表于 2022-2-16 23:52:31 | 显示全部楼层
答主你好,能给一些关于无界约翰逊分布的资料嘛?
精选高品质二手iPhone,上爱锋贝APP

0

主题

43

帖子

3

积分

Rank: 1

发表于 2022-2-17 01:20:08 | 显示全部楼层
抱歉这方面我也没系统学习过,我是就本着学数学的角度,百度谷歌搜吧,了解意义就好
精选高品质二手iPhone,上爱锋贝APP

0

主题

54

帖子

3

积分

Rank: 1

发表于 2022-2-17 03:16:48 | 显示全部楼层
谢谢
精选高品质二手iPhone,上爱锋贝APP

0

主题

61

帖子

27

积分

Rank: 1

发表于 2022-2-17 05:01:02 | 显示全部楼层
答主您好,用使用log变换后的标签去训练模型,得到的预测值应该也是log变化后的数值吗?在提交结果的时候是不是应该转换为原式?
精选高品质二手iPhone,上爱锋贝APP

0

主题

42

帖子

3

积分

Rank: 1

发表于 2022-2-17 06:12:20 | 显示全部楼层
需要转换为原来的
精选高品质二手iPhone,上爱锋贝APP
您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

QQ|Archiver|手机版|小黑屋|爱锋贝 ( 粤ICP备16041312号-5 )

GMT+8, 2025-2-21 23:44

Powered by Discuz! X3.4

© 2001-2013 Discuz Team. 技术支持 by 巅峰设计.

快速回复 返回顶部 返回列表