数据挖掘实战(一):Kaggle竞赛经典案例剖析-阿里云开发者社区

开发者社区> 青衫无名> 正文

数据挖掘实战(一):Kaggle竞赛经典案例剖析

简介: Load Lib 在这边提一下为什么要加 import warnings warnings.filterwarnings('ignore') 主要就是为了美观,如果不加的话,warning一堆堆的,不甚整洁。
+关注继续查看

Load Lib

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

在这边提一下为什么要加

import warnings

warnings.filterwarnings('ignore')

主要就是为了美观,如果不加的话,warning一堆堆的,不甚整洁。

Load data

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

和正常的套路一样,Id的没有什么卵用但是每个数据集都喜欢加的东西,因此我们弄死它就好了。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

Data Statistics

Data Statistics是不能省略的部分,这部分能够首先让你对Data Science有个很基础的认知,也就是play with your data之前的know your data的部分。

在这里说一下,我在之前很简单粗暴的一上来就

dataset=df.iloc[:,1:]

把Id给删掉了,是不对的。正常的套路要先进行Data Statistics之后,才能进行对数据集的操作,否则误删了有价值的数据。。。就不大好了。。。

先看看数据集里有什么东西?

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

大家发现这个数据集很有趣的地方就是,他的数据类型全部都是int64的,这样Data cleaning的时候压力会小一点。

Data Cleaning

首先,我们来搞定一些没用的项目

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

We will dropped column ['Soil_Type7', 'Soil_Type15']

Nice,现在再来看一下:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

我们现在来看一下偏离量:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

这里要提一下,我之前如果没有执行删除'Soil_Type7', 'Soil_Type15'的内容的话,他们的偏离量为0,同样的,大家也可以通过这个方法来剃掉Soil_Type这个废柴。(本来就是用std剃掉的来着。。。)

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

为什么选Kaggle的数据集的原因又出现了,所有的Class都已经equal presence了,这就意味着不需要有一个re-balancing的过程了。

怎么说也是文化人,之前给大家的都不算什么有技术含量的,现在来个好玩的,也是Data Science的核心:Correlationship

首先要提一下,不是随便的啥啥啥数据都可以搞Correlationship的,至少要有continous才可以。

在Data Statistics的过程中,我们对数据有一个基本的认识了,因此,Wilderness_Area和Soil_Type我们不能用,谁教他是不是0就是1呢(一般我们叫它们binary)。

先做个准备

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

来正戏了,Pandas为什么那么多人用的原因之一就是,它将很多的东西都给工具化了,如果要手码的话。。。简直不寒而栗。。。

但是Pandas只要一句:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

看着很烦对不对?是的,很多没有什么必要的信息也一股脑子的弄了出来。

所以我们设置一个threshold,threshold可以理解为阈值,低于threshold就屏蔽掉好了。一般0.5以上才能说有相关性,0.8以上高度相关。有兴趣的同学可以看下Reference的Wikipedia中Correlation的解释。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

这样,我们得到七个比较有关联的数据。但是还是有人觉得,还是不大像人话。还有人说我没图你说个啥?这里我导入一下seaborn,无他,只是因为我觉得Matplotlib的默认视图做这个。。。是真的很难看啊。。。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

在这里,我们移除了Soil_Type7和Soil_Type15,因为这两项的全是没变。

这里提一下,通过调试

dataset.std()

可以很简单直接的把值压根就没变化的废物给找出来,这个方法很常用。

由于Kaggle的数据集内容本身没有什么需要清理的需求,所以Data Cleaning做到这一步就差不多了。

在这里提一下,通过list将操作保存起来这个习惯很重要——要不然说翻车就翻车了,然后死活都找不到之前做了什么。。。

严谨的数据科学家是不会放过它滴。

640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy



原文发布时间为:2017-02-21本文作者:那只猫本文来自云栖社区合作伙伴“Python中文社区”,了解相关信息可以关注“Python中文社区”微信公众号

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
数据分析实战 基于EXCEL和SPSS系列工具的实践》一1.4 数据分析的流程
数据分析一般有数据采集、数据整理、制表、数据分析、数据呈现等多个阶段。当然,不是说每一个数据分析的过程都需要这些阶段,有的企业数据质量非常好,自然就不需要数据采集过程了;也有些数据分析并不怎么需要呈现过程。不过,为了方便读者理解,下面将介绍一个完整的流程。
1379 0
带你读《Python金融大数据挖掘与分析全流程详解》之三:金融数据挖掘案例实战1
本书以功能强大且较易上手的Python语言为编程环境,全面讲解了金融数据的获取、处理、分析及结果呈现。全书共16章,内容涉及Python基础知识、网络数据爬虫技术、数据库存取、数据清洗、数据可视化、数据相关性分析、IP代理、浏览器模拟操控、邮件发送、定时任务、文件读写、云端部署、机器学习等,可以实现舆情监控、智能投顾、量化金融、大数据风控、金融反欺诈模型等多种金融应用。
4078 0
数据进入Maxcompute的N种方式,大数据实战Demo系统数据上云实践
2018 “MaxCompute开发者交流”钉钉群直播分享,由阿里云数据技术专家彬甫带来以“数据进入MaxCompute的N种方式”为题的演讲。本文讲述了在阿里云内部开发了一个实战Demo系统,它能够实现自动全链路的大数据处理流程,其中包括离线的和实时数据的,接下来将为大家揭晓实战Demo系统是怎样实现自动全链路的大数据处理流程的。
4727 0
HBase BulkLoad批量写入数据实战
1.概述 在进行数据传输中,批量加载数据到HBase集群有多种方式,比如通过HBase API进行批量写入数据、使用Sqoop工具批量导数到HBase集群、使用MapReduce批量导入等。这些方式,在导入数据的过程中,如果数据量过大,可能耗时会比较严重或者占用HBase集群资源较多(如磁盘IO、HBase Handler数等)。
1559 0
【理论+案例实战】Python数据分析之逻辑回归(logistic regression)
逻辑回归是分类当中极为常用的手段,它属于概率型非线性回归,分为二分类和多分类的回归模型。对于二分类的logistic回归,因变量y只有“是”和“否”两个取值,记为1和0。假设在自变量x1,x2,……,xp,作用下,y取“是”的概率是p,则取“否”的概率是1-p。
10164 0
《数据分析实战 基于EXCEL和SPSS系列工具的实践》一1.3 数据分析的几大抓手
时不时地有培训学员来问我一个问题:“我怎么样才能把数据分析做好?”要回答这个问题还真是不容易,就像业余围棋爱好者问“我怎么样才能快速提高自己的棋力?”或者刚刚进入职场的大学生问“我怎么样才能把销售业绩做好?”一样。
1135 0
+关注
3598
文章
840
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《Nacos架构&原理》
立即下载
《看见新力量:二》电子书
立即下载
云上自动化运维(CloudOps)白皮书
立即下载