如何从 ggmap 输出中提取邮政编码?
How can I extract the zip code from the ggmap output?
structure(list(trip_count = 1:10, pickup_longitude = c(-73.964096,
-73.989037, -73.934998, -73.93409, -73.998222, -74.004478, -73.994881,
-73.955917, -73.993607, -73.948265), pickup_latitude = c(40.764141,
40.760208, 40.746693, 40.715908, 40.750809, 40.741501, 40.74033,
40.776054, 40.758625, 40.778515)), row.names = c(NA, -10L), class = c("tbl_df",
"tbl", "data.frame"))
所以我正在尝试将经度和纬度数据重新编码为纽约市的邮政编码。
使用 revgeocoding
来自 ggmap
我已经得到了一些结果:
res <- revgeocode(c(test$pickup_longitude[1],test$pickup_latitude[1]), output = "all")
然而,
- 我一次只能将此过程应用于一个位置数据。有没有一种方法可以让我一次获得每个位置的结果,比如
res <- revgeocode(c(test$pickup_longitude,test$pickup_latitude), output = "all")
- 如何从 ggmap 结果中提取邮政编码,以便我可以使用相应的邮政编码在数据框中创建一个新列?不知何故,邮政编码以一种非常奇怪的方式存储(见图)。如何在控制台中访问此信息?
解决方案不一定适用于 ggmap
,也许有不同的方法从经度和纬度数据中获取邮政编码?
谢谢!
我没有 API 密钥,但请尝试以下操作:
my_func <- function(longlat, output){
list(list(list(c(vector("list", 7), list(12345L)))))
}
test %>%
rowwise() %>%
mutate(zip = list(my_func(c(pickup_longitude, pickup_latitude), output = "all"))) %>%
mutate(zip = zip[[1]][[1]],
zip = zip[[8]])
将 my_func
替换为 revgeocode
。您必须弄清楚如何从输出中找出邮政编码。但是你可以试试上面的方法。
structure(list(trip_count = 1:10, pickup_longitude = c(-73.964096,
-73.989037, -73.934998, -73.93409, -73.998222, -74.004478, -73.994881,
-73.955917, -73.993607, -73.948265), pickup_latitude = c(40.764141,
40.760208, 40.746693, 40.715908, 40.750809, 40.741501, 40.74033,
40.776054, 40.758625, 40.778515)), row.names = c(NA, -10L), class = c("tbl_df",
"tbl", "data.frame"))
所以我正在尝试将经度和纬度数据重新编码为纽约市的邮政编码。
使用 revgeocoding
来自 ggmap
我已经得到了一些结果:
res <- revgeocode(c(test$pickup_longitude[1],test$pickup_latitude[1]), output = "all")
然而,
- 我一次只能将此过程应用于一个位置数据。有没有一种方法可以让我一次获得每个位置的结果,比如
res <- revgeocode(c(test$pickup_longitude,test$pickup_latitude), output = "all")
- 如何从 ggmap 结果中提取邮政编码,以便我可以使用相应的邮政编码在数据框中创建一个新列?不知何故,邮政编码以一种非常奇怪的方式存储(见图)。如何在控制台中访问此信息?
解决方案不一定适用于 ggmap
,也许有不同的方法从经度和纬度数据中获取邮政编码?
谢谢!
我没有 API 密钥,但请尝试以下操作:
my_func <- function(longlat, output){
list(list(list(c(vector("list", 7), list(12345L)))))
}
test %>%
rowwise() %>%
mutate(zip = list(my_func(c(pickup_longitude, pickup_latitude), output = "all"))) %>%
mutate(zip = zip[[1]][[1]],
zip = zip[[8]])
将 my_func
替换为 revgeocode
。您必须弄清楚如何从输出中找出邮政编码。但是你可以试试上面的方法。