[R-br] Coords - GeoR

Elias T Krainski eliaskrainski em yahoo.com.br
Quinta Dezembro 5 08:02:07 BRST 2013


Exemplo de georeferenciamento com a API do R
(sugestoes de XML experts are welcome)


getll <- function(address) {
     u <- paste('http://maps.googleapis.com/',
                'maps/api/geocode/xml?address=',
                address, '&sensor=true', sep='')
     tr <- htmlTreeParse(readLines(u),
                         asText=TRUE, useInternalNodes=TRUE)
     ll <-  xmlValue(getNodeSet(doc=tr, path='//location')[[1]])
     n <- nchar(ll) ### problema em off diagonal: (-,+) ou (+,-)
     as.numeric(c(substr(ll, 1, n/2), ### precisa melhorar
                  substr(ll, n/2+1, n))) ### esta parte
}

d <- data.frame(
     numero=c(1500, 100),
     logradouro=c('Avenida Brasil', 'Rua Peter Lund'),
     cidade=rep('Rio de Janeiro',2))
d

require(XML)
t(sapply(apply(d, 1, paste, collapse='+'), function(x)
          getll(gsub(' ', '+', x, fixed=TRUE))))


Mais detalhes sobre a lista de discussão R-br