数据清洗到站点聚类,全面解析伦敦共享单车使用规律!

本文分析了伦敦共享单车数据,涵盖数据清洗、骑行高峰期、站点流量和聚类分析。通过K-Means聚类将800个站点分为5类,提出针对各类站点的管理建议,如优化资源配置、增加自行车停放设施等。分析显示,骑行高峰期为下午3至6点,周二至周四使用频繁,Hyde Park Corner, Hyde Park是最热门的起始站和枢纽。" 135890085,12831281,华为OD机试2024真题C卷解析:Python跳马问题,"['华为机试', '算法', 'Python']
摘要由CSDN通过智能技术生成

1.项目背景

随着共享单车在全球范围内的普及,城市交通出行模式发生了巨大变化。伦敦作为国际化大都市,交通拥堵问题日益严重,共享单车作为一种绿色、环保、便捷的出行方式,逐渐成为解决交通问题的重要组成部分,然而,要实现共享单车系统的高效运营,必须深入了解用户的使用习惯和需求。本项目对伦敦共享单车数据进行了全面分析,涵盖了数据清洗、特征工程(构建新特征)、骑行高峰期分析、站点流量分析,以及通过聚类分析将800个站点划分为5类,并对每一类站点提出建议,最后通过方差分析探讨了影响共享单车流量的因素,通过这些步骤,可以识别高频使用的时间段和站点,为运营商提供优化调度和资源分配的科学依据。

2.数据说明

字段 说明
Number 每次出行的唯一标识符(Trip ID)
Start Date 出行开始的日期和时间
Start Station Number 起始站的标识符
Start Station 起始站的名称
End Date 出行结束的日期和时间
End Station Number 终点站的标识符
End Station 终点站的名称
Bike Number 所使用自行车的唯一标识符
Bike Model 所使用自行车的型号
Total Duration 出行的总时间(时分秒)
Total Duration (ms) 出行的总时间(毫秒)

3.Python库导入及数据读取

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import networkx as nx
import matplotlib.colors as mcolors
import numpy as np
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn.metrics import silhouette_score
import scipy.stats as stats
import warnings
warnings.filterwarnings('ignore')
from pylab import mpl
mpl.rcParams["font.sans-serif"] = ["SimHei"] # 设置显示中文字体 宋体
mpl.rcParams["axes.unicode_minus"] = False #字体更改后,会导致坐标轴中的部分字符无法正常显示,此时需要设置正常显示负号
data = pd.read_csv('D:\Desktop\商业数据分析案例\伦敦共享单车数据集\LondonBikeJourneyAug2023.csv')

4.数据预览及数据处理

# 查看数据维度
data.shape
(776527, 11)
#查看数据信息
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 776527 entries, 0 to 776526
Data columns (total 11 columns):
 #   Column                Non-Null Count   Dtype 
---  ------                --------------   ----- 
 0   Number                776527 non-null  int64 
 1   Start date            776527 non-null  object
 2   Start station number  776527 non-null  int64 
 3   Start station         776527 non-null  object
 4   End date              776527 non-null  object
 5   End station number    776527 non-null  int64 
 6   End station           776527 non-null  object
 7   Bike number           776527 non-null  int64 
 8   Bike model            776527 non-null  object
 9   Total duration        776527 non-null  object
 10  Total duration (ms)   776527 non-null  int64 
dtypes: int64(5), object(6)
memory usage: 65.2+ MB
#查看各列缺失值
data.isna().sum()
Number                  0
Start date              0
Start station number    0
Start station           0
End date                0
End station number      0
End station             0
Bike number             0
Bike model              0
Total duration          0
Total duration (ms)     0
dtype: int64
#查看重复值
data.duplicated().sum()
0
# 将起始日期和结束日期转换为日期时间格式
data[
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值