共享单车需求分析(二)

三、可视化分析

  • 各个时间段单车的租赁变化

考虑到在所给的变量中,时间变量比较多,因此首先考虑各个时间段,单车的租赁情况。

首先看看,2011年和2012年,两年中每个月平均使用情况

 1 #首先看一下整体的租赁
 2 fig = plt.subplots(figsize=(15,15))
 3
 4 ax1 = plt.subplot2grid((4,2), (0,0), colspan=2)
 5 df1 = train_2.groupby([‘Month‘, ‘Year‘]).mean().unstack()[‘count‘]
 6 #print(df1)
 7 df1.plot(kind=‘area‘, ax=ax1, alpha=0.6,fontsize=15)
 8 ax1.set_title(‘Monthly bicycle usage in 2011-2012‘,fontsize=15)
 9 ax1.set_xlabel(‘month‘,fontsize=15)
10 ax1.legend(loc=0)
11 plt.show()

明显能够看到,在2012年,共享单车的使用情况明显好于2011年,我们可以这么认为,共享单车在出现之初,使用量以及普及率没有那么可观,随着共享单车的慢慢普及,租赁情况明显有所上升。同时我们可以看到5-10月的使用情况最好,可能是由于天气温度等原因的影响。

接下来,看看这两年中每个月的平均使用率。

1 #每月平均使用
2 fig,ax2=plt.subplots(figsize=(10,6))
3 th=train_2.groupby(‘Month‘)[‘count‘].mean()
4 #print(th)
5 sns.barplot(y=th.values,x=np.arange(1,13),ax=ax2)
6 ax2.set_xlabel(‘month‘,size=15)
7 ax2.set_ylabel(‘Avearage Count‘)
8 ax2.set_title(‘Average Count By Month‘)
9 plt.show()


接下来,以周为时间周期,看看每天各个时间段平均使用量

1 #一周每天的使用情况
2 fig,ax3=plt.subplots(figsize=(10,6))
3 season_week=train_2.groupby([‘Hour‘,‘Weekday‘]).mean().unstack()[‘count‘]
4 #season_week.columns=[‘Spring‘,‘Summer‘,‘Fall‘,‘Winter‘]
5 season_week.columns=[‘Mon‘,‘Tue‘,‘Wed‘,‘Thu‘,‘Fri‘,‘Sat‘,‘Sun‘]
6 season_week.plot(ax=ax3,style=‘-.‘)
7 plt.show()

从上图我们可以看出,周一到周五中,一天中早上8-9点和下午5-7点,使用量比较多,可能是早上上班时间和晚上下班时间导致的,同时包含外出吃饭的原因,而对于周末,时间比较集中,基本在11点到下午5点左右使用量比较多,这个时间估计是大家的休闲时间。

然后,我们看看各个季节,一天中各个时段,单车的使用情况

 1 #每个季节一天平均使用量
 2 fig,ax4=plt.subplots(figsize=(10,6))
 3 season_hour=train_1.groupby([‘Hour‘,‘season‘]).mean().unstack()[‘count‘]
 4 season_hour.columns=[‘Spring‘,‘Summer‘,‘Fall‘,‘Winter‘]
 5 #print(season_hour)
 6 season_hour.plot(ax=ax4, style=‘--.‘)
 7 ax4.set_title(‘Average Hourly Use of Shared Bicycles in a U.S. City in 2011-2012‘)
 8 ax4.set_xlabel(‘hour‘)
 9 ax4.set_xticks(list(range(24)))
10 ax4.set_xticklabels(list(range(24)))
11 ax4.set_xlim(0,23)
12 plt.show()

从上图我们可以看出,春天的使用量明显偏少,可能是温度较低的原因,同时,早上八点和晚上5点左右使用较多,与我们上面分析一样。最后展示一下在节假日时,单车的使用情况
 1 #接着看看节假日单车使用情况
 2 fig,ax5=plt.subplots(figsize=(10,6))
 3 #ax5 = plt.subplot2grid((4,2), (3,0), colspan=2)
 4 df51 = train_2.groupby([‘Hour‘, ‘holiday‘]).mean().unstack()[‘count‘].rename(columns={0:‘non holiday‘,1:‘holiday‘})
 5 df52 = train_2.groupby([‘Hour‘, ‘workingday‘]).mean().unstack()[‘count‘].rename(columns={0:‘weekend‘,1:‘workday‘})
 6 df51.plot(ax=ax5, style=‘-.‘)
 7 df52.plot(ax=ax5, style=‘-o‘)
 8 ax5.set_title(‘Average Hourly Use of Shared Bicycles in a U.S. City in 2011-2012‘)
 9 ax5.set_xlabel(‘hour‘)
10 ax5.set_xticks(list(range(24)))
11 ax5.set_xticklabels(list(range(24)))
12 ax5.set_xlim(0,23)
13 plt.savefig(‘hol.jpg‘)
14 plt.show()

明显可以看到,周末和工作日,单车的使用主要集中在不同时间,而节假日和非节假日使用时间比较接近,但是节假日使用明显高于非节假日。


  • 天气对单车租赁的影响
 1 #天气的影响
 2 fig,ax6=plt.subplots(figsize=(8,5))
 3 weather_1=train_2.groupby(‘weather‘)[‘count‘].sum()
 4 weather_2=train_2.groupby(‘weather‘)[‘count‘].mean()
 5 weather_=pd.concat([weather_1,weather_2],axis=1).reset_index()
 6 weather_.columns = [‘weather‘, ‘sum‘, ‘mean‘]
 7 #weather_[‘sum‘].plot(kind=‘bar‘, width=0.6, ax=ax6,color=‘green‘)
 8 sns.barplot(x=weather_[‘weather‘],y=weather_[‘sum‘],data=weather_,edgecolor=‘black‘,linewidth=0.9)#edgecolor柱形边缘颜色
 9 weather_[‘mean‘].plot(style=‘b--o‘, alpha=0.6, ax=ax6,secondary_y=True)
10 plt.grid()
11 plt.xlim(-1,4)
12 ax6.set_xlabel(‘weather‘)
13 ax6.set_ylabel(‘sum‘)
14 ax6.set_xticks(range(4))
15 ax6.set_xticklabels([‘sunny‘,‘cloudy‘,‘light snow‘,‘heavy snow‘])
16 ax6.set_title(‘Shared bicycle usage in different weather in a city of the United States in 2011-2012‘)
17 plt.show()

 1 fig,ax7=plt.subplots(figsize=(8,5))
 2 #ax8=ax7.twinx()
 3 wind_1=train_2.groupby(‘windspeed‘).sum()[‘count‘]
 4 wind_2=train_2.groupby(‘windspeed‘).mean()[‘count‘]
 5 wind_=pd.concat([wind_1,wind_2],axis=1).reset_index()
 6 wind_.columns = [‘windspeed‘, ‘sum‘, ‘mean‘]
 7 wind_[‘sum‘].plot(style=‘-o‘, ax=ax7, alpha=0.4,color=‘g‘)
 8 wind_[‘mean‘].plot(style=‘b--.‘, alpha=0.6, ax=ax7, secondary_y=True, label=‘平均值‘)
 9 ax7.set_label(‘windspeed‘)
10 plt.xlim(0,30)
11 plt.grid()
12 ax7.set_xlabel(‘windspeed‘)
13 ax7.set_ylabel(‘count‘)
14 ax7.set_title(‘Shared bicycle usage at different windspeeds in a city of the United States in 2011-2012‘)
15 plt.show()

第一幅图反映出天气状况对租车数量的影响,柱状图是租车总量,天气越好租车总量越多,但天气好的时候多毫无疑问也造成了这个结果。

折线图反映的是平均值,目的就是消除各种天气的天数不同的影响,然而反常的是大雨大雪大雾天气情况下租车数量的平均值居然大幅提升,这一反常现象同样出现在右图中,当风速越高,租车总量趋近于0的时候,平均数反而最高,我们来查看一下原始数据:

1 train_1[train_1[‘weather‘]==4]
2 train_1[train_1[‘windspeed‘]>50]

通过查阅原始数据,我们发现这种极端天气出现的次数很少,所以导致这种极端情况。

  • 温度及湿度对租赁的影响
1 #湿度月平均变化
2 humidity_m= train_2.groupby([‘Year‘,‘Month‘]).mean()[‘humidity‘]
3 fig,ax8=plt.subplots(figsize=(15,5))
4 humidity_m.plot(marker=‘o‘,color=‘r‘)
5 plt.grid()
6 plt.legend()
7 ax8.set_title(‘Change trend of average humidity per day in 2011-2012‘)
8 plt.savefig(‘wen.jpg‘)
9 plt.show()

1 humidity_c = train_1.groupby([‘humidity‘], as_index=True).agg({‘casual‘:‘mean‘, ‘registered‘:‘mean‘, ‘count‘:‘mean‘})
2 humidity_c.plot(style=‘-.‘,figsize=(15,5),title=‘Average number of rentals initiated  per hour in different humidity‘)
3 plt.grid()
4 plt.legend()
5 plt.savefig(‘wen2.jpg‘)
6 plt.show()

第一张图显示的是一年中湿度的变化,第二张图展示的是不同湿度对租赁的影响,可以看到,在湿度为20的时候,达到租赁最高峰,随着湿度增加,租赁的数量逐渐减小。

接下来,看看温度的影响。

 1 #温度月平均变化
 2 temp_m= train_2.groupby([‘Year‘,‘Month‘]).mean()[‘temp‘]
 3 temp_m1 = train_2.groupby([‘temp‘], as_index=True).agg({‘casual‘:‘mean‘, ‘registered‘:‘mean‘, ‘count‘:‘mean‘})
 4 temp_m.plot(marker=‘o‘,color=‘r‘,figsize=(15,3))
 5 plt.grid()
 6 plt.legend()
 7 temp_m1.plot(style=‘-.‘,figsize=(15,3),title=‘Average number of rentals initiated  per hour in different temp‘)
 8 plt.grid()
 9 plt.legend()
10 plt.savefig(‘wen3.jpg‘)
11 plt.show()

第一张图展示的是各个月份温度的变化,第二张表明在不同温度下,共享单车的租赁数量的变化,可以看到,当温度较低时,租赁较小,随着温度慢慢上升,租赁有所升高,30-38度左右为最好。

最后我们尝试一下多变量图

1 #多变量
2 sns.pairplot(train_2[[‘temp‘,‘windspeed‘,‘humidity‘,‘count‘]])
3 plt.show()

原文地址:https://www.cnblogs.com/iforger/p/10821555.html

时间: 2024-08-01 23:41:40

共享单车需求分析(二)的相关文章

共享单车需求分析(一)

一.问题说明        共享单车在国内发展时间虽然不算长,但是在国外已经发展不算短了.单车共享系统是一种租赁自行车的方法,使用者租车及还车是通过各个站点网络自动完成,便利大家的生活,本数据来源于Kaggle比赛,本文的目的在于记录数据分析的学习历程. 数据变量说明: datatime 日期+时间 season 1=春 2=夏 3=秋 4=冬 holiday 1=节假日 0=非节假日 workingday 1=工作日 0=周末 weather 1=晴天多云 2=雾天阴天 3=小雪小雨 4=大雨

聊一聊共享单车

1.共享单车的模式用户交押金,然后骑车,按照骑车时间进行计费.其实,严格意义上来讲,这还并不属于共享经济,更像分时租赁. 2.共享单车的用户人群 & 特征用户人群:80后.90后的低频打车人群,其中学生.白领偏多用户特征:年轻群体.接受新兴事物能力强,追求时尚:城市节奏生活快,白领.学生等时间紧张,交通拥堵现象严重:中低端消费人群,追求性价比:城市污染问题日益严重,追求环保出行方式 3.满足需求:主要满足了用户 短途出行的需求,具体如下:固定需求:固定线路:上学/放学.上班/下班,从学校.公司等

爬虫获取mobike共享单车信息

背景:端午节假期的时候参加了学校的数学建模比赛,题目是关于共享单车的供需匹配问题,需要获得共享单车的数量和时空分布情况. 在苦苦找寻数据无果的情况下决定自己用爬虫对天津地区的mobike进行统计. 在网上找到了这篇爬虫的代码,本着少造轮子的基本原则,我选择了这个代码进行统计,这里记录一下历程,方便日后查阅. 先上原作者github地址:git clone https://github.com/derekhe/mobike-crawler.python3环境,爬取的是微信小程序,之前是可以爬手机客

关于市场上新兴流行的共享单车

*问题一:请问好的共享单车要怎么设计? 目前共享单车仍然存在的问题在于以下几个方面: (1) ofo.摩拜单车被蓄意损坏的比较严重: (2) 随意停放导致无序占用公共空间: (3) 因存放随意地点不固定导致有时用户想找到单车很不方便: (4) 用户反映部分单车使用效果较差存在车座不可调.不减震等问题: (5) Ofo小黄车使用机械密码锁导致车子可能存在不上锁成为公共财产的问题: 针对以上问题,我关于共享单车提出的设计建议为: (1) 可以争取政府对共享单车领域的支持,提供资金支持,撰写相关政策条

关于共享单车,说点什么

共享单车,这也许是今年夏天以来最火的一个词语了.然而,它的火不只是在概念上,也真真切切的深入到我们每个人的身边.先上几张图片吧! mobike ofo 先简单说一些,我对这两款产品的看法. 1.从科技角度 这一点,相信不用多说,大家都有结论.ofo单车,可以说和普通自行车没有一点不同.而mobike单车,明显不同于传统的单车.从铃铛到车轮,再到轮胎,再到链条.充满了大量创新元素.科技元素.其中包括,发电及供电设备.移动通信设备.精度定位设备.人机交互设备.从二维码扫码开锁,到自动定位.预约,再到

FM源码、OFO共享单车源码、股票K线分时线源码等

iOS精选源码 一个多环条形联动的动画 仿今日头条的菜单栏,可编辑菜单栏条目 一款优秀的 聆听夜空FM 源码 仿汽车报价大全PK界面 高度自定义的视频播放器 高仿OFO共享单车(SWIFT版) 一款实现股票k线图.分时图的demo 基本满足股票的需求 原创情侣应用-小冤家 React Native编写的简易购物车Demo 扩大循环菜单按钮ASExtendedCircularMenu iOS优质博客 iOS开发者的Weex伪最佳实践指北 引子这篇文章是笔者近期关于Weex在iOS端的一些研究和实践

触目惊心的共享单车坟场!资本宠儿长眠于天价荒地

9月中旬,塞下235万辆共享单车的北京宣布暂停新投放共享单车,至此,北上广深一线城市完成了对共享单车的封顶. 同时,各地也加大了对共享单车违规的打击力度:从前单车阻塞道路的行为被默许,而现在,占道经营的共享单车通通会被投入"荒野". 它们诞生在共享的热潮下,曾以不可抗拒的力量侵入人们的视野,占据各个城市的街道.而现在,它们同样因为不可抗拒的力量,被堆砌在工地中,与荒草为伍,徒增锈迹. 一.被锁住的共享单车 日前,车东西记者路经北京海淀区上地联想大厦时,偶然发现对面曾是露天停车场的一处工

共享单车哈罗王炸连出,OFO小心沦为炮灰

在共享单车行业寒冬之际,哈罗单车却是好消息不断,先是12月4日宣布获得3.5亿美元的D1轮融资,昨天又再次宣布完成10亿元的D2轮融资,在这大家都勒紧裤腰带过日子的寒冬里,哈罗单车可谓是王炸连出,来了一轮大逆袭. 哈罗单车何以王炸不断?投资者背后的逻辑又是什么?我们不妨来做个探究. 一.蚂蚁金服:为了更加丰富的生态 在D1轮的融资中我们知道,永安行持股公司哈罗单车的投资方为蚂蚁金服.威马汽车.成为资本.富士达等多家知名投资机构,其中蚂蚁金服为领投方.目前哈罗单车的股权结构为永安行低碳100%持股

共享单车物联网技术简析

共享单车自诞生之日起,便以如火如荼之势席卷全球,成为时下智慧生活最热点的名词之一,墙边街角,五颜六色的共享单车随处可见,每个人的手机里都或多或少的安装了几款共享单车的APP.要说其中的佼佼者,莫过于阿里扶持的ofo.腾讯支持的摩拜.以及口碑和骑行体验都挺不错的小蓝单车(可惜已经树倒猢狲散,成为过去式了.) 图1 市面上常见的共享单车 这里不去争论它们孰优孰劣,也不去纠结各自的前景如何,单从一个理工男的角度聊聊应用在共享单车上的智能锁及物联网技术原理. 先说摩拜吧.首先,每辆摩拜单车均配备了GPS