Recentemente foi postado na lista uma solução para a obtenção de lat long a partir de um cep:
require(XML)
coordenadas<- function(cep) {
url_lat_lon <- paste(sprintf("http://maps.google.com/maps/api/geocode/xml?address=%s,", cep),"%20Brasil&sensor=false", sep="")
lat_lon=xmlApply(xmlRoot(xmlTreeParse( readLines(url_lat_lon)))[['result']][['geometry']][['location']], "[[", 1)
return(lat_lon)
}
cep=40110010
coordenadas(cep)
> coordenadas(cep)
$lat
-12.9896162
$lng
-38.4922117
Ficou excelente. Mas fiquei imaginando se ao invés de apenas 1 cep eu tivesse uma série, por exemplo:
ceps <- c(40110010,01317000,17120000)
Como modificaria a função acima rotina para ter algo do tipo (em um data frame), sem precisar rodar 1 a 1 cada cep:
cep lat long
40110010 -12.98 -38.49
01317000 -25.29 -57.62
17120000 -22.52 -49.13
Valeu
--
Mauricio Cardeal
UFBA