全国 40城 5000+ 地铁站点数据分析实战——这盛世如您所愿!

Python编程与实战

共 3548字,需浏览 8分钟

 ·

2021-05-07 02:29


这盛世如您所愿

大家好,我是村长

今天这篇文章,是在前两篇文章的基础上进行的后续分析,也算是对地铁站点系列的一个小总结

目的也很明确:通过对爬取到的 40 个已开通地铁的城市,共计 5000+ 地铁站点进行数据分析。

具体的分析流程主要是通过 数据清洗、整体性分析、TOP城市分析 等方面展开,分析方式主要是图表,包括seaborn、excel 三维地图等可视化方式实现。

最后,在文末也给出了更深入的分析角度,感兴趣的同学可以参考

以下是正文:


数据清洗

首先有一点常识需要普及:在部分城市是存在环线,或者地铁一期、二期等情况,对应的地铁站点会多次出现,在数据中表现为重复值

所以,第一件事,就是对这些重复数据的剔除。

先来看下整体数据的情况:

一共40个城市对应的 5001 条地铁站点数据。

对应的直接剔除完全重复的数据,代码如下:

"""删除完全重复的站点"""
df_data_1 = df_data.drop_duplicates()
df_data_1

删除完成后保留了 4859 条数据。


另外,有部分站点数据地理位置不在对应的城市,通过城市去查找会出现空值,比如说下面这些:

一共 51 个数据为空,香港数据为空的较多,其他城市只有较少数,可以删除这些数据、也可以手动补充一下数据

删除之后最终剩下 4808 条数据,表示有 4808 个地铁站点,每个站点都有 10 个详细的字段。


对于一个城市的地铁站点来说,有一个比较重要的指标:换乘站点

如果换乘站点比较多,说明这个城市的交通相对完善,如果三站、四站换乘站点多,说明这个城市的交通比较便利

对应的,可以通过下面这种方式计算换乘站点个数:

df_data_2 = df_data_notnull.copy()
# 计算站点的换乘个数
df_address_cnt = df_data_2.groupby(['城市名称''站点名称']).agg({'拼音名称':'count'}).reset_index().rename(columns={'拼音名称''换乘站点'})
df_data_3 = df_data_2.merge(df_address_cnt, on=['城市名称''站点名称'], how='left')
df_data_3.sample(5)

对应的结果如下:


整体城市分析

绘图和分析的代码重复性比较高,只列举部分,具体可以查看源码

先来看一下 40城 的地铁站点数量分布,代码如下:

df_data_eda = df_data_3.copy()
"""查看城市的地铁站点数量"""
df_city_cnt = df_data_eda.groupby('城市名称').agg({'站点名称':pd.Series.nunique}).reset_index().rename(columns={'站点名称''metro_cnt'})

# 设置标题
plt.figure(figsize=(208))
plt.title('全国40城市地铁站点数量分布')
ax = sns.barplot(data=df_city_cnt, x='城市名称', y='metro_cnt')
plt.ylabel('地铁站点数量')
# 显示数据的具体数值
for x, y in zip(range(0, len(df_city_cnt['城市名称'].index.tolist())), df_city_cnt['metro_cnt'].values.tolist()):
    ax.text(x-0.3, y+0.5'%d' % y, color='black')
plt.show()

绘图显示如下:

可以看到,地铁站点最多的城市是 上海,数量是380

其次分别是:北京、成都、广州、深圳、武汉、重庆、杭州 等城市

成都高于广州与深圳,位列全国第三

再来看每个城市的地铁线路数量分布:

其中北京的地铁线路最多,达到24条,其次分别是上海、广州、成都、香港、深圳、武汉、重庆等

在北京搬砖的同学应该了解,北京有很多新开通的地铁线路是以地区命名的,而且有的是分南段、北段,这样在统计的时候根据名称自然是会当做很多条线。

像深圳新开通的 8 号线(2号线延长线),高德地图将其归为了 2 号线,所以深圳对应的地铁总线路就只有 10 条,而不是 11 条


针对TOP城市分析

整体分析之后,可以针对性的对TOP城市进行分析

本来打算只针对北上广深做进一步分析,但是突然拔尖的成都让我很感兴趣,于是决定一起分析了

先来看看 北上广深成 五大城市的换乘站点统计情况:

由图可知,深圳拥有1个四站换乘的站点,上海拥有2个四站换乘的站点

找出四站换乘的站点:

分别是:深圳的车公庙站,上海的世纪大道、龙阳路站,其中龙阳路站是2号线、7号线、16号线和磁悬浮线四站换乘

另外,除了这五个城市可能还有其他四站换乘站点的城市,一起来看一看:

四站换乘的地铁站点还有:南京的南京南站,大连的开发区站

其中大连的开发区站并不能算做真实意义上的4站换乘,看图就知:


针对具体城市分析

北上广深成 五大城市分别进行深度分析

北京市各区域的站点数量进行深度分析,如下:

其中,朝阳区地铁站点数量为82,海淀区地铁站点数量为63

顺义区、石景山区、门头沟区、广阳区地铁站点数量较少,地铁能辐射到的区域较少。


上海市各区域的站点数量进行深度分析,如下:

其中,浦江新区地铁站点数量为114,遥遥领先其他各区。

第二名的闵行区地铁站点数量为46,崇明区只有1个地铁站点,区域被辐射到的区域较少。

浦江新区站点多的原因主要是因为面积大,网上找了一张图区域行政划分图,长这样:


广州市各区域的站点数量进行深度分析,如下:

其中,天河区、白云区、黄埔区的地铁站点数量依次为 40、35、31,基本分布很均匀

从化区的地铁站点数量最少,地铁能辐射到的区域较少。


深圳市各区域的站点数量进行深度分析,如下:

其中,福田区、南山区的地铁站点数量分别为:54和49,领先其他各区

盐田区站点数量较少,应该是新开通的8号线。


成都市各区域的站点数量进行深度分析,如下:

其中,双流区、武侯区、金牛区的地铁站点数量分别为:61、52和40,遥遥领先其他各区

没有想到的是,成都的地铁站点比深圳多,而且成都的区域聚集效应更明显。


城市地图可视化

最后,通过 excel 的三维地图再来看看上面5个城市的聚集效应到底如何

北京市各区域地铁站点情况三维地图展示:

真的是规规整整,向四面八方进行辐射,圈状的布局非常明显


上海市各区域地铁站点情况三维地图展示:

上海确实是浦江新区的地铁站点相当多,整体聚集效应比较明显,中间圆心位置地理优势很突出


广州市各区域地铁站点情况三维地图展示:

广州的交通现在辐射的已经很多了,像图中左下角的广佛线连接佛山,正下角的连接东莞,甚至以后会直接和深圳用轻轨连起来等,交通枢纽位置明显。

但是同样它的整体聚集效应也比较明显,通过柱子的高度就能看出来。


深圳市各区域地铁站点情况三维地图展示:

深圳的核心区域面积比较小,导致其能辐射的区域有限,对应的只能往上半图辐射连接东莞,右上角辐射连接惠州。

这也正是站点数量被成都挤下去的原因

深圳主要是两个核心区:红色的福田区和亮黄色的南山区,中心区域分布比较均匀

大胆预测一下:按照深圳的发展速度,上半张图大概率会崛起


成都市各区域地铁站点情况三维地图展示:

成都是一个我没想到的城市,没想到它的交通会排在深圳前面,看图就能得出这得益于它的区域位置优越。

成都基本上各条线路已经辐射开了,后面可能会形成一个大的外部环线,其实,类似的城市还有一个,不知道大家能不能联想到?


最后,在上述分析的基础上,你还可以通过以下角度进行更深入的分析

  • 通过客流量数据,结合地铁站点进行日内用户轨迹分析
  • 通过租房数据,结合距离进行房价的进一步探索
  • 通过地产数据,结合地铁站点进行价值分析

ok,以上就是本节分析的全部内容!


浏览 88
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报