Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
2年前关闭。
Improve this question
我有一个包含经度和纬度坐标的数据集。我想检索相应的人口普查区。是否有可以允许我执行此操作的数据集或api?
我的数据集如下所示:
我想添加一列带有相应的人口普查区的信息。
最终输出应类似于以下内容(这些不是正确的数字,仅是示例)。
据我了解,这15位数字的代码是几个代码的总和(前两个是州,接下来的三个是县,后面的六个是地区)。要仅获取人口普查区代码,我只需要使用
希望对您有所帮助!
想改善这个问题吗?更新问题,以便将其作为on-topic用于堆栈溢出。
2年前关闭。
Improve this question
我有一个包含经度和纬度坐标的数据集。我想检索相应的人口普查区。是否有可以允许我执行此操作的数据集或api?
我的数据集如下所示:
lat lon
1 40.61847 -74.02123
2 40.71348 -73.96551
3 40.69948 -73.96104
4 40.70377 -73.93116
5 40.67859 -73.99049
6 40.71234 -73.92416
我想添加一列带有相应的人口普查区的信息。
最终输出应类似于以下内容(这些不是正确的数字,仅是示例)。
lat lon Census_Tract_Label
1 40.61847 -74.02123 5.01
2 40.71348 -73.96551 20
3 40.69948 -73.96104 41
4 40.70377 -73.93116 52.02
5 40.67859 -73.99049 58
6 40.71234 -73.92416 60
最佳答案
tigris
程序包包含一个名为call_geolocator_latlon
的函数,该函数应该可以执行您想要的操作。这是一些使用的代码
> coord <- data.frame(lat = c(40.61847, 40.71348, 40.69948, 40.70377, 40.67859, 40.71234),
+ long = c(-74.02123, -73.96551, -73.96104, -73.93116, -73.99049, -73.92416))
>
> coord$census_code <- apply(coord, 1, function(row) call_geolocator_latlon(row['lat'], row['long']))
> coord
lat long census_code
1 40.61847 -74.02123 360470152003001
2 40.71348 -73.96551 360470551001009
3 40.69948 -73.96104 360470537002011
4 40.70377 -73.93116 360470425003000
5 40.67859 -73.99049 360470077001000
6 40.71234 -73.92416 360470449004075
据我了解,这15位数字的代码是几个代码的总和(前两个是州,接下来的三个是县,后面的六个是地区)。要仅获取人口普查区代码,我只需要使用
substr
函数提取这六个数字。 > coord$census_tract <- substr(coord$census_code, 6, 1)
> coord
lat long census_code census_tract
1 40.61847 -74.02123 360470152003001 015200
2 40.71348 -73.96551 360470551001009 055100
3 40.69948 -73.96104 360470537002011 053700
4 40.70377 -73.93116 360470425003000 042500
5 40.67859 -73.99049 360470077001000 007700
6 40.71234 -73.92416 360470449004075 044900
希望对您有所帮助!
关于r - 从坐标检索普查区,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51499410/
10-09 22:44