【问题标题】:Geocoding Data Locations With Google in R在 R 中使用 Google 对数据位置进行地理编码
【发布时间】:2019-01-16 04:21:38
【问题描述】:

我正在尝试使用此博客中写得很好的说明:https://www.jessesadler.com/post/geocoding-with-r/ 对 R 中的位置数据进行地理编码,包括夏威夷的特定城市和城市。我在从 Google 提取信息时遇到问题。运行 mutate_geocode 时,我的数据运行但没有收集到输出。我暂时绕过了这一点,仅在我的数据集的一个位置手动输入纬度和经度,试图排除故障。现在,当我使用 get_googlemap 时,我收到错误消息“下载文件错误”

我尝试过使用 mutate_geocode 以及使用地理编码运行循环。我要么没有得到输出,要么得到 OVER_QUERY_LIMIT 错误(这似乎很经典)。检查我的查询限制后,我离限制还很远。

方法一:

BH <- rename(location, place = Location)
BH_df <- as.data.frame(BH)
location_df <- mutate_geocode(HB, Location)

方法二:

origAddress <- read.csv("HSMBH.csv", stringsAsFactors = FALSE)
geocoded <- data.frame(stringsAsFactors = FALSE)
for(i in 1:nrow(origAddress))
{
  result <- geocode(HB$Location[i], output = "latlona", source = "google")
  HB$lon[i] <- as.character(result[1])
  HB$lat[i] <- as.character(result[2])
  HB$geoAddress[i] <- as.character(result[3])
}

手动输入 lon 和 lat 点后我遇到了这个错误:

map <- get_googlemap(center = c(-158.114, 21.59), zoom = 4)

我希望为我的位置收集 lat 和 lon 点,然后能够使用 get_googlemap 绘制一张地图,我可以用它来绘制出现的密度点(我已经有了这些点的代码)。

【问题讨论】:

  • 我相信 API 现在要求您注册 API 密钥并可能提供信用卡号,尽管他们每月会给您 200 美元的信用额度。不过,已经过去几个月了,所以它可能又变了。
  • @alistaire,这就是为什么我想,你知道他们会在什么时候开始向你收费,是在一定数量的查询之后吗?
  • 我上次查看时,它会为您提供每月 200 美元的信用额度并收取所有费用,因此如果您拨打的电话价值超过 200 美元,您实际上必须付费。如果你愿意,你可以设置限制,这样它就不会过去,而且 200 美元的 API 调用是相当多的,这取决于你想要做什么。
  • @ColeHendrickson 您的收费主要来自number of requestspricing 非常透明。我之前写了一个step-by-step 教程,也许这有助于启动和运行它。

标签: r ggmap geocode google-apis-explorer


【解决方案1】:

或者,您可以通过tmaptools::geocode_OSM() 使用单线进行快速地理编码:

数据

library(tmaptools)
addresses <- data.frame(address = c("New York", "Berlin", "Huangpu Qu", 
                                    "Vienna", "St. Petersburg"), 
                                    stringsAsFactors = FALSE)

代码

result <- lapply(addresses[, 1], geocode_OSM)

> result 
$address
           query      lat       lon  lat_min  lat_max   lon_min   lon_max
1       New York 40.73086 -73.98716 40.47740 40.91618 -74.25909 -73.70018
2         Berlin 52.51704  13.38886 52.35704 52.67704  13.22886  13.54886
3     Huangpu Qu 31.21823 121.48030 31.19020 31.24653 121.45220 121.50596
4         Vienna 48.20835  16.37250 48.04835 48.36835  16.21250  16.53250
5 St. Petersburg 27.77038 -82.66951 27.64364 27.91390 -82.76902 -82.54062

这样,你两个都有

  1. Google 地图
  2. 很重要的 质心lonlat
  3. 边界框lon_minlat_minlon_maxlat_maxOSM雄蕊 需要。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 2012-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多