Python数据分析:数据可视化实战教程( 三 )


  • 随着温度的升高 , 租赁数量呈上升趋势;
  • 在温度达到35度时 , 因天气炎热 , 总体数量开始下降;
  • 在温度在4度时 , 租赁数达到最低点;
湿度对租赁数量的影响
  • 第一步
提出问题:租赁总量对应湿度的变化趋势
适合图形:因为湿度属于连续性数值变量 , 我们可以选择折线图反应变化趋势
  • 第二步
转换数据:我们需要一个二维数据框 , 按照温度变化排序 , 取对应的三个租赁数的平均值
应用函数:直接应用plt的plot函数即可完成折线图
  • 第三步
参数设置:只需要设置折线图的标题 , 其他参数默认
humidity_df = Bikedata.groupby(['humidity'],as_index=True).agg({'count':'mean','registered':'mean','casual':'mean'})humidity_df.plot(title='Average number of rentals initiated per hour in different humidity')
Python数据分析:数据可视化实战教程文章插图
可以观察到在湿度20左右租赁数量迅速达到高峰值 , 此后缓慢递减 。
年份 , 月份和季节作图方法类似 , 都采用折线图绘制 , 这里省略 。
查看不同天气对出行情况的影响
  • 第一步
提出问题:租赁总量对应湿度的变化趋势
适合图形:因为天气情况属于数值型分类变量 , 我们可以选择柱形图观察数量分布
  • 第二步
转换数据:我们需要一个二维数据框 , 按照天气情况对租赁数量取平均值
应用函数:应用plt的plot.bar函数绘制组合柱形图
  • 第三步
参数设置:只需要设置折线图的标题 , 其他参数默认
weather_df = Bikedata.groupby(['weather'],as_index=True).agg({'registered':'mean','casual':'mean'})weather_df.plot.bar(stacked=True,title='Average number of rentals initiated per hour in different weather')
Python数据分析:数据可视化实战教程文章插图
观察到天气等级为4时 , 平均出行人数比天气等级为2时还要高 , 这不符合常理
我们查看一下天气等级为4的详细情况
count_weather = Bikedata.groupby('weather')count_weather[['casual','registered','count']].count()
Python数据分析:数据可视化实战教程文章插图
天气状况为4级的只有一天 , 我们把数据打印出来查看一下
Bikedata[Bikedata['weather']==4]
Python数据分析:数据可视化实战教程文章插图
时间为工作日的下午六点钟 , 属于晚高峰异常数据 , 不具有代表性 。
会员用户和临时用户在整体用户中占比
  • 第一步
提出问题:查看会员用户和临时用户在整体用户中的比例
适合图形:查看占比 , 适合用饼图pie
  • 第二步
转换数据:需要一个二维数据框 , 按天数取两种用户的平均值
应用函数:应用plt的plot.pie函数绘制饼图
  • 第三步
参数设置:这是数据标签和类别标签
#考虑到相同日期是否工作日 , 星期几 , 以及所属年份等信息是一样的 , 把租赁数据按天求和 , 其它日期类数据取平均值day_df = Bikedata.groupby(['date'], as_index=False).agg({'casual':'sum','registered':'sum','count':'sum', 'workingday':'mean','weekday':'mean','holiday':'mean','year':'mean'})day_df.head()