【问题标题】:how to geocode the districts with NA outcome如何对具有 NA 结果的地区进行地理编码
【发布时间】:2018-06-17 15:49:11
【问题描述】:

我想用name of districts 及其longlat 在R 中创建一个数据框。为此,我给出了命令:

>locations_df <- mutate_geocode(cities_df, district)

此命令使用 maps.googleapis.com 进行地理编码,但对于我的 13 个地区,我得到了 NA error。错误之一粘贴在下面:

geocode failed with status OVER_QUERY_LIMIT, location = "Sukkur" 

如何为缺失值提供地理编码?我在谷歌地图上检查了错过城市的名称是否有拼写错误,但没有看到这样的错误。

感谢您的帮助。

【问题讨论】:

    标签: r ggplot2 geocoding ggmap


    【解决方案1】:

    老实说,您最好的选择可能是再次尝试运行查询。据我所知,结果似乎非常特殊(可能与 WiFi 上的动态 IP 有关?)。这是我刚才的结果。

    df %>% mutate_geocode(address)
    
    Information from URL : http://maps.googleapis.com/maps/api/geocode/json?address=Sukkur&sensor=false
      address lon lat
    1  Sukkur  NA  NA
    Warning message:
    geocode failed with status OVER_QUERY_LIMIT, location = "Sukkur" 
    

    所以我也失败了。我检查了我留下的查询,然后添加了“巴黎”来检查它的结果。

    geocodeQueryCheck()
    2499 geocoding queries remaining.
    
    df
      address
    1  Sukkur
    
    df[2,1]<-"Paris"
    df %>% mutate_geocode(address)
    
    Information from URL : http://maps.googleapis.com/maps/api/geocode/json?address=Sukkur&sensor=false
    Information from URL : http://maps.googleapis.com/maps/api/geocode/json?address=Paris&sensor=false
      address       lon      lat
    1  Sukkur 68.822808 27.72436
    2   Paris  2.352222 48.85661
    

    现在它可以工作了!

    按照this question 的建议获取 Google Maps API 密钥可能有助于解决此问题,如果您安装了ggmap 的 GitHub 版本,则可以使用该密钥。

    另一种选择是按照here 的答案对请求进行迭代。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-04
      • 2017-03-13
      • 1970-01-01
      • 2011-09-10
      相关资源
      最近更新 更多