数据集包括起始城市,目标城市,高铁线路名称,生成stata代码查找两个城市是否在不同高铁沿线上,但是都经过某个城市
时间: 2024-03-10 07:50:38 浏览: 21
好的,根据您的要求,以下是生成stata代码的方法:
假设您已经将数据导入到名为 "highspeedrail" 的stata数据集中,该数据集包含以下变量:
- city1:起始城市
- city2:目标城市
- line:高铁线路名称
- station:经过的高铁站
则您可以使用以下stata代码来查找两个城市是否在不同的高铁线路上,但是都经过某个城市:
```
* 定义需要查找的两个城市和经过的高铁站
local city1 "北京"
local city2 "上海"
local via_station "武汉"
* 查找两个城市是否都经过经过的高铁站,但不在同一条高铁线路上
keep if anymatch(city1 via_station) & anymatch(city2 via_station) & !anymatch(city1 city2 & line != "")
* 过滤出包含经过的高铁站的线路
keep if anymatch(via_station, station) & line != ""
* 生成两个城市经过的高铁线路列表
bysort city1 city2: egen via_lines = concat(line), p(" ")
* 查看每个城市经过的高铁线路列表
list city1 city2 via_lines if via_lines != "" & anymatch(via_station, station)
```
这段代码将创建一个名为 "via_lines" 的新变量,其中包含两个城市经过的高铁线路列表,以空格分隔。
您可以根据需要修改代码中的城市名称和经过的高铁站名称,并查看结果列表以确认是否有符合要求的记录。
以上就是使用stata代码查找两个城市是否在不同高铁沿线上,但是都经过某个城市的方法,希望对您有所帮助。