0

当我尝试使用 rgooglemaps getGeoCode 函数对很多地方进行地理编码时,我得到一个随机数的错误,这些错误返回为 NA。谁能告诉我为什么?(下面的可重现代码)

library(RgoogleMaps)
library(foreach)
###Replicating a large search data###
PlaceVector <- c(rep("Anchorage,Alaska", 20), rep("Baltimore,Maryland", 20), 
rep("Birmingham,Alabama", 20))
iters <- length(PlaceVector)
###Looping to get each geocode###
geoadd <- foreach(a=1:iters, .combine=rbind) %do% {
  getGeoCode(paste(PlaceVector[a]))
}
geoadd <- as.data.frame(geoadd)
geoadd$Place <- PlaceVector

我得到随机数量的错误,通常在 15 个左右,其中数据框 geoadd 中的纬度和经度返回为 NA。我可以将它循环回到 NA 上,但这似乎完全没有效率。其他人对提供的示例代码有同样的问题吗?

4

1 回答 1

1

我在示例中也得到了 NA。我曾经在循环和地理编码方面遇到问题。问题是我在最短的时间内快速或多次请求谷歌地图。我建立了一个等待期Sys.sleep来解决这个问题。问题是找到正确的等待微秒数。这取决于您的连接和谷歌的响应时间。

于 2018-01-13T18:46:32.237 回答