POI是英文"Point of Interest"的缩写,中文翻译为"兴趣点"或"兴趣地点"。在地理信息系统(GIS)和位置服务领域中,POI通常指代一些在地图上显示的特定地点或地理位置,例如商店、餐厅、公园、景点等。

与之前分享的 数据集 | 2亿条中国大陆工商企业注册信息 ,可以结合起来使用。


一、数据集概况

370个地市, 截止2022年12月份的POI数据集。压缩文件夹体积800M,解压3.9G。

解压后, 在「全国POI数据(2022年12月)」文件夹内新建一个 「代码.ipynb」,运行如下代码查看文件夹内的文件列表

import glob

# 查询
files = glob.glob('*/*.csv')
files

Run

    [
    '北京POI数据/北京市POI数据.csv',
    '浙江省POI数据/杭州市POI数据.csv', 
     '吉林省POI数据/长春市POI数据.csv',
     '陕西省POI数据/西安市POI数据.csv',
     '江苏省POI数据/南京市POI数据.csv',
     '山东省POI数据/青岛市POI数据.csv',
     '湖南省POI数据/长沙市POI数据.csv',
     '辽宁省POI数据/大连市POI数据.csv',
     ...
     '河北省POI数据/衡水市POI数据.csv',
    ]

地级市csv文件个数

len(files)

Run

370

二、读取POI数据

读取北京、天津、青岛、上海、广州、杭州、长沙这几个城市poi数据(大家可以根据自己的兴趣更改城市)

import pandas as pd

bj_df = pd.read_csv('北京POI数据/北京市POI数据.csv', encoding='utf-8')
qd_df = pd.read_csv('山东省POI数据/青岛市POI数据.csv', encoding='utf-8')
tj_df = pd.read_csv('天津市POI数据/天津市POI数据.csv', encoding='utf-8')


sh_df = pd.read_csv('上海POI数据/上海市POI数据.csv', encoding='utf-8')
gz_df = pd.read_csv('广东省POI数据/广州市POI数据.csv', encoding='utf-8')
hz_df = pd.read_csv('浙江省POI数据/杭州市POI数据.csv', encoding='utf-8')
cs_df = pd.read_csv('湖南省POI数据/长沙市POI数据.csv', encoding='utf-8')


hz_df.head(10)


#该文件poi记录数
print('北京poi记录数: ', len(bj_df))
print('天津poi记录数: ', len(tj_df))
print('青岛poi记录数: ', len(qd_df))

print()

print('上海poi记录数: ', len(sh_df))
print('广州poi记录数: ', len(gz_df))
print('杭州poi记录数: ', len(hz_df))
print('长沙poi记录数: ', len(cs_df))

Run

    北京poi记录数:  679413
    天津poi记录数:  409020
    青岛poi记录数:  426314
    
    上海poi记录数:  780347
    广州poi记录数:  793056
    杭州poi记录数:  534595
    长沙poi记录数:  406489

三、简单分析

对比北京、天津、青岛、上海、广州、杭州、长沙这几个城市poi大类占比情况,探索性分析, 大家可以根据自己的兴趣更改城市

import pandas as pd
import matplotlib.pyplot as plt
import matplotlib
import matplotlib_inline
matplotlib_inline.backend_inline.set_matplotlib_formats('png', 'svg')
import scienceplots
import platform

plt.style.use(['science', 'no-latex', 'cjk-sc-font'])
system = platform.system()  # 获取操作系统类型

if system == 'Windows':
    font = {'family': 'SimHei'}
elif system == 'Darwin':
    font = {'family': 'Arial Unicode MS'}
else:
    font = {'family': 'sans-serif'}
matplotlib.rc('font', **font)  # 设置全局字体




# 统计各城市的大类POI数量
bj_poi_count = bj_df['大类'].value_counts(normalize=True)
tj_poi_count = tj_df['大类'].value_counts(normalize=True)
qd_poi_count = qd_df['大类'].value_counts(normalize=True)


sh_poi_count = sh_df['大类'].value_counts(normalize=True)
hz_poi_count = hz_df['大类'].value_counts(normalize=True)
gz_poi_count = gz_df['大类'].value_counts(normalize=True)
cs_poi_count = cs_df['大类'].value_counts(normalize=True)



# 创建一个包含所有城市的分组条形图
fig, ax = plt.subplots(figsize=(12, 6))

# 计算每个城市的条形图位置
bar_width = 0.07

bar_positions = range(len(bj_poi_count))

bj_bars = ax.bar(bar_positions, 
                 bj_poi_count, 
                 width=bar_width, 
                 label='北京')


tj_bars = ax.bar([p + bar_width for p in bar_positions], 
                 tj_poi_count, 
                 width=bar_width, 
                 label='天津')


qd_bars = ax.bar([p + 2*bar_width for p in bar_positions], 
                 dl_poi_count, 
                 width=bar_width, 
                 label='青岛')


sh_bars = ax.bar([p + 3*bar_width for p in bar_positions], 
                 sh_poi_count, 
                 width=bar_width, 
                 label='上海')


hz_bars = ax.bar([p + 4 * bar_width for p in bar_positions], 
                 hz_poi_count, 
                 width=bar_width, 
                 label='杭州')

gz_bars = ax.bar([p + 5 * bar_width for p in bar_positions], 
                 gz_poi_count, 
                 width=bar_width, 
                 label='广州')


cs_bars = ax.bar([p + 6 * bar_width for p in bar_positions], 
                 cs_poi_count, 
                 width=bar_width, 
                 label='长沙')


ax.set_title('POI地理兴趣点城市比较')
ax.set_xlabel('POI大类')
ax.set_ylabel('POI类别占比')
ax.set_xticks([p + bar_width for p in bar_positions])
ax.set_xticklabels(bj_poi_count.index)
ax.legend()  # 添加图例

plt.show()

svg

7个城市中,从poi大类占比来看,

  • 交通设施&科教文化&休闲娱乐&运动健身&金融机构&旅游景点, 北京位列top1
  • 购物消费, 长沙位列top1
  • 餐饮美食, 广州位列top1
  • 生活服务&公司企业, 上海位列top1
  • 酒店住宿, 杭州位列top1
  • 汽车相关, 天津位列top1

数据获取

付费内容, 点击链接进入跳转页面 有疑问,加微信372335839, 备注「姓名-学校-专业」


广而告之