R-存储用于反向地理编码的循环输出(google api) y

R-存储用于反向地理编码的循环输出(google api) y,r,R,考虑使用Map(包装到mapply)构建数据帧列表,因为您正在向量之间运行元素循环。然后,rbind在最后一起执行一次。您可以通过流程的通用函数运行循环: get_address <- function(lat, lon) { latlng <- list(latlng = paste(lat, lon), key = "XXXX") response <- GET(url, query = latlng) Sys.slee

考虑使用
Map
(包装到
mapply
)构建数据帧列表,因为您正在向量之间运行元素循环。然后,
rbind
在最后一起执行一次。您可以通过流程的通用函数运行循环:

get_address <- function(lat, lon) {
   latlng <- list(latlng = paste(lat, lon),
                  key = "XXXX")
   response <- GET(url, query = latlng)
   Sys.sleep(0.1)
   if(response$status_code == 200){
      apiResponse <- fromJSON(content(response, "text"))
   }
   else{
      print("Error with Request")
   }

   return(apiResponse$results$formatted_address)
}

df_list <- Map(get_address, myContent$lat, myContent$lon)

df_list <- Filter(NROW, df_list)    # REMOVE EMPTY DATA FRAMES
df_list <- Filter(length, df_list)  # REMOVE EMPTY NULL ITEMS

final_df <- do.call(rbind, df_list)

get_address Change data to y在最后一行
library(googleway)
中,它有一个功能也可能有帮助。切勿在
for
中调用
rbind
,因为这会导致过度复制。