【数据分析】Kaggle项目之共享单车数据分析(一)

本文探讨了一个Kaggle项目,涉及华盛顿共享单车系统的租赁需求预测。通过对历史天气和租赁数据的分析,处理异常值,特别是针对租赁数量的长尾分布。项目中,数据预处理包括检查和处理风速的异常值,并使用随机森林预测填充缺失值。分析显示,租赁数量与天气等级、风速、温度、湿度等因素密切相关,且会员和临时用户的出行模式存在差异。
摘要由CSDN通过智能技术生成

项目背景

自行车共享系统是一种租赁自行车的方法,注册会员、租车、还车都将通过城市中的站点网络自动完成,通过这个系统人们可以根据需要从一个地方租赁一辆自行车然后骑到自己的目的地归还。

需要结合历史天气数据下的使用模式,来预测华盛顿共享自行车的租赁需求

数据提供了跨越两年的每小时租赁数据,包含天气信息和日期信息,训练集由每月前19天的数据组成,测试集是每月第二十天到月底的数据

提出问题

  • 通过测试集中的天气等特征值预测会员租赁数量,临时租赁数量和总租赁数量

数据预处理

查看缺失值

import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)

# Input data files are available in the "../input/" directory.
# For example, running this (by clicking run or pressing Shift+Enter) will list the files in the input directory

from datetime import datetime
import warnings
warnings.filterwarnings('ignore')

import matplotlib.pyplot as plt
import seaborn as sns
sns.set(style='whitegrid',palette='tab10')

train=pd.read_csv('../input/train.csv')
train.info()

test = pd.read_csv('../input/test.csv')
test.info()

数据没有缺失值,但是没有缺失值不代表没有异常

检查异常值

train.describe()

先从数值型数据入手,看出租赁额(count)数值差异较大,所以希望观察一下count的密度分布

# 观察租赁额密度分布
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
fig.set_size_inches(6,5)

sns.distplot(train['count'])
ax.set(xlabel='count',title=
Cyclistic 是一家虚构的公司,提供自行车共享设施。该公司有两大类骑手:休闲骑手和年度会员。休闲骑手是使用单程通行证和全天通行证的人。年度会员有一年的通行证可以使用自行车。 描述性分析 我已经分别使用每个月的数据透视表进行了初步分析。 数据透视表 1:这描述了每个工作日的骑行次数和平均骑行时长。 数据透视表 2:这分析了每种可骑行类型(即停放自行车、经典自行车和电动自行车)的骑行次数和平均骑行长度。 数据透视表 3:它比较了每个成员类型(即休闲和年度)的乘车次数和平均乘车时间。 数据透视表 4:这显示了整个月的平均和最大骑行长度。 数据透视表 5:该表记录了每个起点站的骑行次数和平均骑行长度。 我已经整理了每个月的这些摘要,并放在一个电子表格中,以确定每月和季节性的分析。我发现的一些有趣的事实和趋势如下: 最长的骑行发生在 2021 年 6 月至 7 月,创下大约 38 天的记录! 一年中的几个月,即 5 月到 9 月,自行车骑行的次数很高,7 月本身记录了 822k 的峰值。 11 月至 2 月见证了低乘车人数。2 月创下了最低的降幅,仅有 5 万次骑行。 Streeter Dr & Grand Ave 是最受欢迎的起点站,一个月内乘坐次数高达 15,000 次。 每月比较 其他一些重要的观察结果是: 经典自行车是最受欢迎的选择,每 3 次骑行中就有 2 次使用经典自行车。 停放自行车是骑行超过 1 小时的人的最爱。 休闲骑手的平均骑行长度高于年度会员。几乎是后者的两倍。 周六和周日的骑行次数最多。这两天的平均骑行时间也创下了历史新高。 使用 SQL 进行年视图分析 我将使用 SQL 合并所有的月度数据来做一个整体的年度分析。我将使用 Microsoft SQL Server 来执行所有数据库操作。 所有分步查询都可以在这里找到bikesharecasestudy.sql。请务必查看bikeShareCaseStudyReport.docx以查看所有重要数据和输出。 该分析揭示了年度会员和休闲骑手之间的一些有趣趋势。以下是分析。 年末会员的乘车份额增加(超过 50%),加上临时会员的乘车份额下降。最大值记录在 1 月 (80%)。 休闲骑手的平均骑行时长是年度骑手的两倍多。 年度会员在一年内记录的乘车次数多于休闲骑手。 周六的骑行次数和平均骑行时长最高,其次是周六和周五。周末生意兴隆。 经典自行车是这两种骑手中最喜欢的类型。停靠自行车是最不受欢迎的。此外,休闲会员选择经典自行车进行长途骑行。 临时会员通常更喜欢周末而不是工作日。年度车手则相反,他们在所有日子里的人数都很高,周日大幅下降。 使用 R 进行年视图分析 对于使用 R 的分析,我使用了 4 个季度的数据 - 2019 年的 Q2、Q3、Q4 和 2020 年的 Q1 。可以在此处找到用于清理、合并、分析和可视化的脚本R_script.R。 分享 此阶段是将要向利益相关者展示的重要和相关信息可视化。 年度会员和休闲骑手之间最显着的区别之一是他们在工作日的运营模式。 有报告
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值