概述
需要源码和数据集请点赞关注收藏后评论区留言私信~~~
下面以自行车租赁统计数据为例,使用Pandas中的时间序列分析方法,探究自行车租赁数据随时间以及天气变化的分布情况,数据来自Kaggle网站
1:导入模块
import numpy as np
import pandas as pd
import datetime
import matplotlib.pyplot as plt
import seaborn as sns
plt.figure(figsize = (10,8))
%matplotlib inline
2:获取数据 导入待处理数据bike.csv 并显示前五行
bike = pd.read_csv('data//bike.csv')
bike.head()
3:分析数据
首先查看有无缺失值
bike.isnull().sum()
然后查看待处理数据的数据类型
bike.info()
然后将字段datetime的类型转换为日期时间
bike.datetime = pd.to_datetime(bike.datetime)
bike.dtypes
先从数值型数据入手,可以看出租赁额(count)数值差异大,所以希望观察一下它们的密度分布
sns.distplot(bike["count"])
# plt.plot(s.index,s.values)#作图
从运行结果发现 有长尾现象
显示count字段的描述信息
bike["count"].describe()
将count列中小于第一四分位数的数据删除 并绘制对应的密度图
def Count(x):
if x <42:
return np.nan
else:
return x
bike1 = bike
bike1["count"] = bike1["count"].apply(Count)
bike1 = bike1.dropna(axis=0, how='any')
sns.distplot(bike1["count"])
对数据进行处理后长尾现象有所改善
接下来绘制按年份统计自行车租赁数均值的直方图
y_bike.plot(kind='bar',rot = 0)
重采样 按月进行分析汇总
mm_bike = bike.resample('M',kind = "period").mean()
mm_bike.head()
然后按月统计数据的绘图
mm_bike.plot()
plt.legend(loc = "best",fontsize = 8)
绘图观察哪个月份自行车的租赁数目最大
m_bike.plot()
plt.grid()# 9月份达到最大值
从图中可以看出 9月份自行车租赁数最多
分析每天不同时间自行车租赁数量的变化
h_bike.plot("bar",rot = 0)
从图中可以发现 每天八点和十七点自行车租赁数量最多 对应这个时候上下班和上下学的人数较多
接下来分析季节对租赁数额的影响
season_bike = bike.groupby(bike.season).mean()['count']
season_bike
season_bike.plot(kind = "bar",rot = 0)
接下来分析温度对租赁数额的影响
temp_bike = bike.groupby([bike.temp]).mean()['count']
temp_bike.sample(10)
temp_bike.plot()
然后分析风速对租赁数额的影响
wind_bike_sort = wind_bike.sort_values(ascending=False)
wind_bike_sort.head(20).plot(kind="bar",rot = 60)
最后分析天气对租赁数额的影响
weather_bike = bike.groupby(bike.weather).mean()['count']
weather_bike.plot(kind='bar',rot = 0)
创作不易 觉得有帮助请点赞关注收藏~~~
最后
以上就是威武镜子为你收集整理的利用Pandas探究自行车租赁随时间及天气变化的分布情况并可视化(附源码 超详细)的全部内容,希望文章能够帮你解决利用Pandas探究自行车租赁随时间及天气变化的分布情况并可视化(附源码 超详细)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复