中国的工业企业都在哪里?—— Stata、高德接口与地理编码

中国的工业企业都在哪里?—— Stata、高德接口与地理编码

在之前的教程:从广州南站到珠江新城怎么走?—— 调用高德地图接口进行路线规划 中,我介绍了如何使用 R 调用高德地图接口进行经纬度查询(地理编码)和路径规划,今天我再介绍下 Stata 调用高德地图接口的方法和应用。

视频讲解

准备工作

注册高德地图,创建应用添加 Key(注意申请 Key 的时候服务平台应该选择“Web
服务”)。

高德地图创建应用页面链接:https://lbs.amap.com/dev/key/app
高德地图开发者文档 - 地理/逆地理编码:https://lbs.amap.com/api/webservice/guide/api/georegeo
高德地图开发者文档 - 路径规划:https://lbs.amap.com/api/webservice/guide/api/direction

在 Stata 中安装 insheetjson 和 libjson:

1
2
ssc install insheetjson, replace
ssc install libjson, replace

这两个是用于解析 json 数据的。如果你无法通过 ssc 安装 Stata 的外部命令,也不要担心,我已经把这两个命令的源码放到了附件中,可以使用 net install 安装。

percentencode.ado 文件放进工作目录下面或者 plus / personal 文件夹,这个命令用于 URL 转码。

单个地址的经纬度查询

同样的示例,我们查询下“广州南站”的经纬度:

查看对 json 文件解析的结果:

代码去哪了?

代码可以加入我的知识星球后从知识星球下载附件获取~
要了解如何加入我的知识星球,可以阅读关于界面或者添加我的微信咨询。

然后我们就可以根据这个响应的结果提取数据了:

代码去哪了?

代码可以加入我的知识星球后从知识星球下载附件获取~
要了解如何加入我的知识星球,可以阅读关于界面或者添加我的微信咨询。
1
2
3
4
5
6
7
*>    +------------------------------------------------------------+
*> 1. | formatted_address | country | province | citycode |
*> | 广东省广州市番禺区广州南站 | 中国 | 广东省 | 020 |
*> |----------------------------+-------------------------------|
*> | city | district | adcode | location | level |
*> | 广州市 | 番禺区 | 440113 | 113.267080,22.988342 | 兴趣点 |
*> +------------------------------------------------------------+

为了方便使用,我们可以把上面的代码整理出一个 ado 命令,这个命令输入中文地址,返回该地址对应的经纬度并把这个经纬度存储在返回值中方便调用。

代码去哪了?

代码可以加入我的知识星球后从知识星球下载附件获取~
要了解如何加入我的知识星球,可以阅读关于界面或者添加我的微信咨询。

例如查询“广州南站”的经纬度:

代码去哪了?

代码可以加入我的知识星球后从知识星球下载附件获取~
要了解如何加入我的知识星球,可以阅读关于界面或者添加我的微信咨询。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
*> 广州南站的经纬度是:113.267080,22.988342
*> 查看返回值:ret list

ret list

*> macros:
*> r(level) : "兴趣点"
*> r(location) : "113.267080,22.988342"
*> r(adcode) : "440113"
*> r(district) : "番禺区"
*> r(city) : "广州市"
*> r(citycode) : "020"
*> r(province) : "广东省"
*> r(country) : "中国"
*> r(formatted_address) : "广东省广州市番禺区广州南站"

解析中国工业企业的位置

然后我们就可以在实际研究中使用了,例如解析中国工业企业的位置,这里我使用了 2013 年的数据,为了演示的需要,我仅仅保留了前 1000 个观测值,下面我们使用一个循环解析这些企业的经纬度:

代码去哪了?

代码可以加入我的知识星球后从知识星球下载附件获取~
要了解如何加入我的知识星球,可以阅读关于界面或者添加我的微信咨询。

使用地图展示

最后我们就可以把这些企业的位置展示在中国地图上了:

代码去哪了?

代码可以加入我的知识星球后从知识星球下载附件获取~
要了解如何加入我的知识星球,可以阅读关于界面或者添加我的微信咨询。

是不是蛮简单的!以后我们再学习高德地图的其它接口。

知识星球附件链接:https://t.zsxq.com/aMVVJ6Y

#

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×