标题EDA部分心得体会
首先EDA是探索性数据分析的缩写,顾名思义,主要目的就是对拿到的数据进行清洗、分析等工作,也是比赛中的第一步,也是很重要的一步,因为你对数据的理解将直接影响到你的上限,直接影响后面的特征工程那部分,直接影响结果,在拿到赛题数据后,我们要大致了解一下数据,比如你的DataFrame是几行几列的啊,有没有缺失值,有没有异常值,查看每列的存在nan情况,异常值检测,比如价格那列有没有负数等等,先对数据本身有一个大致的了解,你要知道这些数据大致表达了什么,然后你就要知道数据的结构特征,比如数据之间有没有什么联系等,然后就是统计一下缺失值的数量,如果数量多我们要考虑是否舍弃这个特征,如果确实少的话需要填补,是简单填补,还是用什么模型填补,比如随机森林等,然后大致了解下预测值的分布,查看总体分布概况(无界约翰逊分布等),查看skewness and kurtosis,因为想让其符合正态分布,数据有可能右偏,也有可能左偏。再查看预测值的具体频数,再看一下特征的分类情况,特征可分为类别特征和数字特征,并对类别特征查看unique分布,提取出所有数字特征,为下一步分析做准备。
然后就是绘图部分,图的类型有很多种,比如时序图--查看变化规律,直方图--查看数据分布情况,密度曲线--查看分布情况,箱型图--查看数据异常情况,以及不同数据间的对比分析,小提琴图--进阶版的箱型图,可以查看某个值附近的概率分布。
接下来是量化方法,首先是相关性分析,分为定类变量、定序变量、定距变量,然后就是独立性分析,看看变量间有无线性相关性,或许还会存在非线性相关等,MV test独立性检验。
在分析数据的过程中可以用可视化的方式展示一些数据存在的问题,以及某些特征之间的联系等,代码部分我就不一一赘余了,等这个比赛结束,我会将我的比赛代码上传到github上,欢迎大家阅读。