2000~2024 年各城市多中心指标(王峤版本)

最近给大家讲解过如何使用 R 语言测算中国各城市多中心度与集聚程度:

名师讲堂|使用 R 语言基于 LandScan 数据测算城市多中心指标(王峤版本):https://rstata.duanshu.com/#/brief/course/e05ca4945e744a6f8ee8932f8ed85ebc

今天再给大家分享一份基于 LandScan 人口栅格数据测算的 2000~2024 年各城市多中心指标面板数据(王峤版本)。与之前的多中心程度指标不同,该数据采用了一种新的测度方法:基于形态多中心角度,采用城市中各个次中心人口占所有人口中心比重来测度城市多中心程度。该指标在文献「空间结构、城市规模与中国城市的创新绩效_王峤」中有提及。

数据概览

数据的时间范围为 2000~2024 年,为地级市层面的面板数据。

包含如下变量:

  • year:年份
  • city_name:城市名称
  • city_code:行政区划代码(2021版)
  • center_count:城市中心数量
  • main_pop:主中心人口数量(人)
  • sub_pop:次中心人口数量(人)
  • polycentric_index:多中心指数(= 次中心人口数量 / 所有中心人口数量)

其中多中心指数 = 次中心人口数量 / 所有中心人口数量,指标值越大表示城市中次中心人口占比越高,城市越趋于多中心。

图表展示

下图展示了 2000~2024 年全国城市平均多中心指数变化趋势:

下图展示了所有样本中城市多中心指数的分布情况:

各年份城市多中心指数的箱线图分布:

各年份城市中心数量分布(按中心数量分组):

城市多中心指数分组占比随时间的变化趋势:

主要城市(北京、上海、广州、深圳、成都、武汉、西安、南京)多中心指数变化趋势:

2024 年中国城市多中心指数空间分布:

2024 年中国城市中心数量空间分布:

城市多中心指数与中心数量之间的关系:

各年份城市平均中心数量:

处理代码

附件中也提供了该数据的处理代码供参考:

数据处理使用 R 语言完成。核心思路是使用基于非参数法的探索性空间数据分析法(ESDA),通过计算局部 Moran’s I 指数识别城市中的高人口密度集聚区域(HH 型栅格),然后将相邻的 HH 型栅格聚类形成人口中心,最后根据各中心的人口规模计算多中心指数。关键代码如下:

# 加载所需的 R 包
pacman::p_load(terra, sf, spdep, tidyverse, fs, furrr, tictoc)

# 分析参数设置
ANALYSIS_PARAMS <- list(
sig_level = 0.05, # 显著性水平
min_cells = 3, # 最小栅格数(约 3km²)
min_pop = 100000, # 最小人口数(10万人)
dist_nb = 1000 # 点邻接距离(米),栅格边长约 1km
)

# 计算多中心指数的核心函数
calculate_polycentric <- function(city_code, pop_file) {
# 1. 裁剪城市范围的人口栅格
r_city <- rast(pop_file) %>%
crop(vect(current_city)) %>%
mask(vect(current_city))

# 2. 栅格转点
pts <- as.points(r_city) %>%
st_as_sf() %>%
rename(pop = 1) %>%
drop_na(pop)

# 3. 构建边邻接空间权重矩阵
coords <- st_coordinates(pts)
nb <- dnearneigh(coords, 0, ANALYSIS_PARAMS$dist_nb)
lw <- nb2listw(nb, style = "W", zero.policy = TRUE)

# 4. 计算局部 Moran's I
lmo <- localmoran(pts$pop, lw, zero.policy = TRUE)

# 5. 识别 HH 型栅格(高密度且邻居也高密度)
pts <- pts %>%
mutate(
p_val = lmo[, 5],
sig = p_val < ANALYSIS_PARAMS$sig_level,
med = median(pop, na.rm = TRUE),
lag_val = lag.listw(lw, pop),
self = if_else(pop > med, "H", "L"),
nbr = if_else(lag_val > med, "H", "L"),
type = case_when(
sig & self == "H" & nbr == "H" ~ "HH",
TRUE ~ "其他"
)
)

# 6. 聚类 HH 栅格形成连续区域,筛选有效中心
# 7. 计算多中心指数 = 次中心人口 / 所有中心人口
index <- sub / (main + sub)
}

数据引用格式

由于该数据包含较多 RStata 处理的内容,在研究中使用该数据请使用清晰的方式注明数据来源于 RStata 或者 RStata 数据中心,并使用如下格式引用:

RStata 数据中心: 2000~2024年各城市多中心指标(王峤版本). 2026. https://tidyfriday.cn/rsdb2/

英文文献可以使用下面的格式引用:

RStata Data Center: Polycentric Indicators for Chinese Cities, 2000–2024 (Wang Qiao Version). 2026. https://tidyfriday.cn/rsdb2/

关联课程/数据推荐

名师讲堂|使用 R 语言测算中国各城市多中心度与集聚程度:https://rstata.duanshu.com/#/course/4db63085cd024c3eb7a1746af2068498

名师讲堂|使用 R 语言基于 LandScan 数据测算城市多中心指标(王峤版本):https://rstata.duanshu.com/#/brief/course/e05ca4945e744a6f8ee8932f8ed85ebc

课程|R 语言:使用夜间灯光数据构造城市形态指标:https://rstata.duanshu.com/#/course/641566c4bec6430fa796c07d8de3f5bf

栅格数据的裁剪与面积汇总——基于 R 语言的方法:https://rstata.duanshu.com/#/course/d2c2710928f44ad7a7518b8a178562c0

点击这里跳转到 RStata 短书平台获取附件:2000~2024 年各城市多中心指标

评论