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

随着共享单车在全球范围内的普及,地毯清洗13825404095城市交通出行模式发生了巨大变化。伦敦作为国际化大都市,交通拥堵问题日益严重,共享单车作为一种绿色、环保、便捷的出行方式,逐渐成为解决交通问题的重要组成部分,然而,要实现共享单车系统的高效运营,必须深入了解用户的使用习惯和需求。本项目对伦敦共享单车数据进行了全面分析,涵盖了数据清洗、特征工程(构建新特征)、骑行高峰期分析、站点流量分析,以及通过聚类分析将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[

2024-08-29 00:43 点击量:13