我在纽约市有一个地点列表(没有地址,只有两个不同列中的纬度和经度)。 如果我想在曼哈顿提取位置,我将如何在R或Python中完成它?
我使用的方法是使用revgeocode
中的函数ggmap
来提取完整地址。例如:
revgeocode(c(-73.99596, 40.75936))
会给:
'561 10th Ave, New York, NY 10036, USA'
然后我会用grep
查看地址是否有曼哈顿的邮政编码之一:
grep("10036|10001|10011|10018|10019|10020|10036|10029|10035|10010|10016|10017|10022|10012|10013|10014", loc, ignore.case = FALSE, perl = FALSE, value = FALSE,
fixed = FALSE, useBytes = FALSE, invert = FALSE)
将1
作为正面返回。
我意识到这可能不是解决这种情况的最佳方法。此外,revgeocode
使用Google Maps API限制每天查询的使用。所以,我希望如果有任何其他更好的方法来解决这个问题,我没有想到或遇到过。例如,我在想是否有一条规则:
#pseudo code
if latitude in range(X1, X2) and longitude in range(Y1, Y2):
borough = "Manhattan"
我希望有人可以填补我在这种情况下缺乏地理编码和地理知识。