2015-10-06 30 views
0

我有一個data.frame,有1500個緯度/經度條目。我需要將這些座標映射到他們的郵政編碼。有沒有辦法做到這一點,除了一次輸入一個geonames-type api?我想要一個包含R的包,它需要一個經緯度組合併爲我的data.frame的每一行生成一個郵政編碼。Lat/Lon的郵政編碼(批量查詢)

+0

選中此項:http://stackoverflow.com/questions/13316185/r-convert-zipcode-or-lat-long-to-county –

回答

0

使用開放街道地圖API,你可以嘗試

library(RCurl) 
library(RJSONIO) 

latlon2zip <- function(lat, lon) { 
    url <- sprintf("http://nominatim.openstreetmap.org/reverse?format=json&lat=%f&lon=%f&zoom=18&addressdetails=1", lat, lon) 
    res <- fromJSON(url) 
    return(res[["address"]][["postcode"]]) 
} 

latlon2zip(lat=52.5487429714954, lon=-1.81602098644987) 

爲了使用latlon2zip功能transform,使用Vectorize