为了账号安全,请及时绑定邮箱和手机立即绑定

数据分析实战——共享单车

标签:
机器学习

共享单车在近两年来火爆的不要不要的,而我在学习了数据分析师(入门)的几堂课之后,十分想要尝试一下数据分析的过程。

此次打算从kaggle上的共享单车项目进行入手,选择了bike-sharing-demand项目,COME ON !

webp

说到数据分析就要想到一个东西,数据分析的流程。

数据分析主要分为5大流程:

1需求分析

明确自己的需求是什么,想要用这个数据集来做什么?

这个应该是很多小伙伴们都很纠结的一个问题,不知道从何入手,那我们可以去找一下资料,看看别人做这个分析的时候都会从哪些角度入手?怎么样研究问题呢?

2数据获取

我们有了明确的目标之后,就要考虑数据是怎么获取的,本文最初采用kaggle数据集中的数据。

获取数据的方法除了从kaggle下载之外,还有很多方法,之前DC学习助手就有一篇专门介绍数据获取方式的文章。

3数据处理

数据处理是整个数据分析过程中最麻烦的步骤,有句话说“数据科学家的70%时间都是用在数据处理上”。

4数据分析

当我们拿到了已经进行清洗完的数据之后,那我们就要考虑具体的分析内容了。
分析方法有很多,常见的有描述性统计分析、探索性数据分析、验证性数据分析。可以根据自己的数据和分析目标去选择。

5数据可视化

数据可视化是数据分析的最后一步,也叫做结果展示,通过图表的方式有效并且清晰的来展示与传达信息。

在本文中我们采用的是python中的seaborn库进行可视化。

我们可以认为它是matplotlib库的高级版,对复杂的可视化图表支持的比较好并且也很美观,可以媲美R语言的ggplot2库。

好了,简单介绍完了数据分析的流程之后,我们就要正式开工了。

step1 导入包

webp

这里面的包就不过多解释啦,都是我们常用的数据分析及可视化包。

你们可能会比较好奇%matplotlibinline是什么东西。

这个其实是因为我用的是jupyternotebook,如果不用这一行代码的话,就只会显示出一串稀奇古怪的东西。

webp

除了这行代码可以之外呢,还有另外一个也可以,就是%matplotlib note,它的功能更为强大,还能放大缩小图表,但是缺点就是更耗内存。

step2 导入数据

webp

在此处选择的是试用pandas库中read.csv()方法,后面看到很多的参数,原因是我之前没有加后面的参数之后,一直在报错无法初始化。

考虑两个情况,第一个就是因为有中文的问题,所以在第一个里面放入了encoding 参数,找到是engine的过程很曲折,此处不细说。

step3 查看数据字段含义

webp

用head方法查看前五个数据,可以看出train数据集里面的字段比test的字段多三个,然后查看数据量。

webp

训练集的数据量是10886条12个字段,测试集是6493条数据9个字段,训练集比测试集的字段量多的为:casual、registered、count。

这些会不会给我们的分析带来灵感呢?下面我们就来看下这个数据集里面给的条件。

  • Datatime:日期时间,可以拆分出来年月日、时分秒这些数值

  • Season:季节1=春天 2=夏天 3=秋天 4=冬天

  • Holiday:是否是节假日 0=是,1=不是

  • Workingday:1=工作日 0=周末

  • Weather:1=晴天,多云 2=雾天,阴天 3=小雪,小雨 4=大雨,大雪,大雾

  • Temp:气温摄氏度

  • Atemp:体感温度

  • humidity:湿度

  • windspeed:风速

  • casual:非注册用户个数

  • registered :注册用户个数

  • count:总租车人数(在特定时间内)

step4 数据清洗

字段含义已经很清晰明了了,下面就开始进行数据清洗工作。

01
我们采用的是查看是否有空值,那就需要将两个数据集合并。

webp

得到的结果:

webp

我们可以看到除了test里面的三个不含有的字段之外,其它都是0,这说明这个数据非常的完整,良心数据。

02
为了后续分析方便,datatime字段我们会处理成单个的日期时间,分割为日期和时间,因为给出的都是小时数,所以我们直接切分为小时。

webp

为了方便后面的处理,我们将原始数据转化为DataFrame格式。

webp

step5 数据分析及可视化

完成上面的处理之后我们就要进行数据的分析了,首先我们选择使用相关性分析。

01 热图

webp

根据上图我们可以看出

  • 季节和体感温度、外界温度有强的正相关

  • 天气和湿度呈现较强的正相关

  • 气温温度和体感温度及租车人数呈现强正相关性

  • 体感温度和气温温度及租车人数呈现强正相关性

  • 湿度和租车人数呈现较强的负相关性

总结上面的两点就是,温度越高租车人数越多;湿度越大租车人数越少。

湿度和环境有很大关系,猜测湿度非常大可能是雨雪天气,那此时人们对于单车的需求将会大大降低。

这个说法并不严谨,肯定有个温度的上限,超过即人数下降。

虽然气温和体感温度呈现强相关性,天气和湿度,季节和外界温度体感温度也是强相关性,但是只是本身的性质,对于目前分析来说没有什么帮助。

02季节和租车人数的关系

既然季节和体感温度、气温温度有强相关,而后两者又和租车人数有关,那我们来研究一下季节和租车人数有什么样的关系。

webp

获得下图:

webp

我们可以看到相对于夏季和秋季来说,春季租单车人数明显较少,而冬季相对来说变化不是非常大,略小于夏秋季节。

原因可能是春季还没有回暖,部分地区可能会风雨较多,并且所谓春寒料峭嘛,人们大多数不太喜欢骑单车。

那冬季为什么会比春天多呢?推测可能是因为人们从秋天过渡到冬天的,最开始的时候还是会比较喜欢骑车子,后面越来越冷才会减少骑车。

03温度和租车人数的关系

到底是不是因为温度的原因呢?那我们下面就研究一下温度。

刚才我们说到了温度和租车人数呈现强相关性,我们能推测出来,温度越高租车的人越多,但是不准确,我们验证一下,Let’s GO。

webp

webp

根据图像可以看出来,在当温度及体感温度高于大约35摄氏度的时候,用户的使用频率就开始降低。

也就是说,虽然确实是随着温度的增加,骑车人的数目也会增加,但是达到一定的温度还是会下降的,说明之前的推测是对的,确实有个上限。

好了,这次简单的小实战练习就结束了,这次的代码参考与了KAGGLE、知乎上面的大佬的代码,让我在琢磨的过程中受益匪浅~感谢大佬们的分享与帮助。



作者:DC学院
链接:https://www.jianshu.com/p/56fd8efcf82e


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

举报

0/150
提交
取消