1990~2019 年各乡镇人口密度数据(中国科学院资源环境科学与数据中心来源)

中国科学院资源环境科学与数据中心(http://www.resdc.cn/DOI/DOI.aspx?DOIid=32) 上面提供了一份中国人口空间分布公里网格数据集,共六个年份的数据,1990,1995,2000,2005,2010,2015,2019。之前给大家分享过根据这份数据计算得到的省市区县面板数据,今天再计算一份乡镇级别的。

中国各省/市/县人口密度面板数据 (1995~2019年):https://rstata.duanshu.com/#/brief/course/3db6aa95f23341bc8beacfbc0317aa88

栅格数据转面板的操作基本都类似,感兴趣的小伙伴可以学习之前推出的课程:

  1. 中国各省市碳排放量是如何计算的?R 语言栅格数据转面板数据:https://rstata.duanshu.com/#/brief/course/75de598dcfcc4ad0b9ff28bff27f6b83
  2. 如何将栅格数据处理成面板数据或时间序列数据?以 PM2.5 浓度数据处理为例(含并行计算内容):https://rstata.duanshu.com/#/brief/course/109dfcdfd1174d1eb2d00c621df4f047

附件中也提供了计算该数据的参考代码。

经过计算即可得到 1990~2019年各乡镇人口密度面板数据 了:

  • 1990~2019年各乡镇人口密度面板数据.xlsx

另外会使用 Stata 的小伙伴也可以使用 dta 格式的:

  • 1990~2019年各乡镇人口密度面板数据.dta
library(tidyverse)
readxl::read_xlsx("1990~2019年各乡镇人口密度面板数据.xlsx") -> df

df
#> # A tibble: 303,562 × 8
#> 乡镇 乡镇代码 年份 mean sum min max sd
#> <chr> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 一元街办事处 420102003000 1990 2738. 8213. 1250. 3498. 1288.
#> 2 一六镇 431022108000 1990 245. 15205. 203. 338. 34.6
#> 3 一六镇 440232103000 1990 86.8 6682. 70.8 120. 12.9
#> 4 一农场 130209401000 1990 187. 9154. 111. 278. 30.2
#> 5 一品街道 500113008000 1990 638. 40850. 360. 751. 94.3
#> 6 一市镇 330226104000 1990 312. 20613. 230. 456. 52.9
#> 7 一平垣乡 141002203000 1990 349. 45428. 275. 483. 46.4
#> 8 一平浪镇 532331105000 1990 101. 45420. 77.7 158. 14.9
#> 9 一座营镇 220581109000 1990 234. 17773. 113. 362. 65.1
#> 10 一心乡 230624200000 1990 45.8 29167. 31.8 195. 18.1
#> # ℹ 303,552 more rows
#> # ℹ Use `print(n = ...)` to see more rows

另外在附件中我还提供了一份省市区县乡镇代码对照表:

haven::read_dta("乡镇代码匹配省市区县.dta")
#> # A tibble: 43,366 × 8
#> 乡镇 乡镇代码 县代码 省 省代码 市 市代码 县
#> <chr> <chr> <dbl> <chr> <dbl> <chr> <dbl> <chr>
#> 1 一元街办事处 420102003000 420102 湖北省 420000 武汉市 420100 江岸区
#> 2 一六镇 431022108000 431022 湖南省 430000 郴州市 431000 宜章县
#> 3 一六镇 440232103000 440232 广东省 440000 韶关市 440200 乳源瑶族自治县
#> 4 一农场 130209401000 130209 河北省 130000 唐山市 130200 曹妃甸区
#> 5 一品街道 500113008000 500113 重庆市 500000 重庆市 500000 巴南区
#> 6 一市镇 330226104000 330226 浙江省 330000 宁波市 330200 宁海县
#> 7 一平垣乡 141002203000 141002 山西省 140000 临汾市 141000 尧都区
#> 8 一平浪镇 532331105000 532331 云南省 530000 楚雄彝族自治州 532300 禄丰市
#> 9 一座营镇 220581109000 220581 吉林省 220000 通化市 220500 梅河口市
#> 10 一心乡 230624200000 230624 黑龙江省 230000 大庆市 230600 杜尔伯特蒙古族自治县
#> # ℹ 43,356 more rows
#> # ℹ Use `print(n = ...)` to see more rows

乡镇区划代码的总体势性是 2021 年,不过也有一些可能是早些年份的,实际上使用过程中可以先和自己手上的乡镇数据匹配,对于匹配不上的再逐一检查。

除了平均人口密度(mean),我还给大家计算了 sum、min、max 和 sd 指标,或许也有用。

下图展示了 2019 年中国各乡镇街道的平均人口密度:

看起来有点像是栅格数据,毕竟很精细。另外也可以选择部分省份的观测,例如黑吉辽的:

绘图代码在附件中也有提供,感兴趣的小伙伴也可以学习平台上的这个课程:

使用 R 语言绘制中国夜间灯光地图:https://rstata.duanshu.com/#/brief/course/a430bddc4100426fb4dfeeec38c994d9

点击这里跳转到 RStata 短书平台获取附件:1990~2019 年各乡镇人口密度数据(中国科学院资源环境科学与数据中心来源)

评论