实现pandas自行车行车数据分析

目的:

使用pandas进行自行车行驶数据分析,并使用matplotlib库进行绘图展示,数据来源可在pandas官网下载,该数据记录的是蒙特利尔市七条自行车道行车人数

步骤:

1先打开数据文件观察数据结构,以及类型
2准备环境
3读取文件
4选择需要的数据进行分析绘图
具体实现
通过直接打开数据的方式可以看到,我们的数据分隔符为";"且编码格式不适合UTF-8,应使用latin1编码格式,且日期格式不符合pandas的时间日期格式,需要我们重新定。
准备环境

import  pandas as pd
import matplotlib.pyplot as plt
#pd.set_option('display.style', 'default')
plt.rcParams['figure.figsize'] = (15,5)

读取文件

broken_df=pd.read_csv('bikes.csv',encoding='latin1')
#print(broken_df[:3])
fix_df=pd.read_csv('bikes.csv',encoding='latin1',sep=';',parse_dates=['Date'],
                   dayfirst=True,index_col='Date')
#print(fix_df[:3])

使用encoding属性定义编码格式,sep定义分隔符,parse_dates将选定的某一列解析为时间索引,dayfirst说明原数据的首个元素是天,index_col设置Date列为索引。
数据分析

#print(fix_df['Berri 1'])
fix_df['Berri 1'].plot()
plt.show()

berri_bike=fix_df['Berri 1'].copy()

假设我们希望了解周末和工作日,那个骑自行车的人比较多,这时我们需要在DataFrame里加一列“工作日”用来区分工作日和周末,我们只考虑’Berri 1‘街道的数据。我们需要添加一个名为“工作日”的列,我们先利用时间索引,得到那些天是工作日那些天是周末。

fix_df.loc[:,'weekday']=fix_df.index.weekday
print(fix_df[:5])
#berry_bike_weekday=fix_df['weekday'].copy()
weekday_counts=fix_df.groupby('weekday').aggregate(sum)
#print(weekday_counts)
weekday_counts.index=['Monday','Tuesday','wednesday','thursday','Friday','Saturday','Sunday']
print(weekday_counts)
weekday_counts.plot(kind='bar')
plt.show()
  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值