武汉市到内地省会城市的出行距离和时间|凡凡分享
2020-03-11 本文已影响0人
凡有言说
本专栏旨在分享日常学习过程中,亲自整理的部分数据、敲写的代码等。
本期分享的数据是“武汉市到内地省会城市的出行距离和时间"以及代码,其包含的变量有:
- 起点城市
- 终点城市
- 起点城市经度
- 起点城市纬度
- 终点城市经度
- 起点城市纬度
- 出行距离:汽车
- 出行时间:汽车
- 出行距离:飞机
- 出行时间:飞机
- 出行距离:火车
- 出行时间:火车
效果图:
image.png
*安装命令
ssc install cngcode,replace
ssc install cntraveltime,replace
*导入文件
import excel using "起始城市.xlsx", firstrow clear
save 起始城市.dta, replace
*注意:baidukey(xxx) "xxx"要填入自己申请的百度地图API AK信息
use 起始城市.dta, clear
*通过cngcode将地名转换为经纬度
cngcode, baidukey(xxx) fulladdress(起点) lat(startlat) long(startlong)
cngcode, baidukey(xxx) fulladdress(终点) lat(endlat) long(endlong)
save 经纬度.dta
*通过cntraveltime计算出行距离和所需时间
*1.出行方式:汽车
use 经纬度, clear
cntraveltime,baidukey(xxx) ///
startlat(startlat) startlng(startlong) endlat(endlat) endlng(endlong) transport(car)
save 汽车.dta
*2.出行方式:飞机
*intercity(0, 1) 0:尽可能快 1:飞机
use 经纬度, clear
cntraveltime,baidukey(xxx) ///
startlat(startlat) startlng(startlong) endlat(endlat) endlng(endlong) transport(bus) intercity(0, 1)
save 飞机.dta
*3.出行方式:火车
*intercity(0, 0) 0:尽可能快 0:火车
use 经纬度, clear
cntraveltime,baidukey(xxx) ///
startlat(startlat) startlng(startlong) endlat(endlat) endlng(endlong) transport(bus) intercity(0, 0)
save 火车.dta
*数据合并
use 汽车, clear
rename distance distance_car
rename duration duration_car
label var distance_car "出行距离:汽车"
label var duration_car "出行时间:汽车"
keep 起点 终点 distance_car duration_car
save 汽车.dta, replace
use 飞机, clear
rename distance distance_plane
rename duration duration_plane
label var distance_plane "出行距离:飞机"
label var duration_plane "出行时间:飞机"
keep 起点 终点 distance_plane duration_plane
save 飞机.dta, replace
use 火车, clear
rename distance distance_train
rename duration duration_train
label var distance_train "出行距离:火车"
label var duration_train "出行时间:火车"
keep 起点 终点 distance_train duration_train
save 火车.dta, replace
use 起始城市.dta, clear
merge 1:1 起点 终点 using 经纬度, keep(3) nogen
merge 1:1 起点 终点 using 汽车, keep(3) nogen
merge 1:1 起点 终点 using 飞机, keep(3) nogen
merge 1:1 起点 终点 using 火车, keep(3) nogen
save 武汉市到其他省会城市的出行距离和时间