google 的 R 地理编码对一个国家/地区的搜索限制
R Geocode with google with search restrictions to a country
我试图过滤出来自某个国家的搜索结果,因为有时 API returns 随机纬度和经度。这是我的代码
library(ggmap)
# Select the file from the file chooser
#fileToLoad <- file.choose(new = TRUE)
# Read in the CSV data and store it in a variable
register_google(key = "xxxxxxx")
origAddress <- read.csv("test.csv", stringsAsFactors = FALSE)
# Loop through the addresses to get the latitude and longitude of each address and add it to the
# origAddress data frame in new columns lat and lon
for(i in 1:nrow(origAddress)) {
result <- tryCatch(geocode(origAddress$addresses[i], output = "latlona", source = "google"),
warning = function(w) data.frame(lon = NA, lat = NA, address = NA))
origAddress$lon[i] <- as.numeric(result[1])
origAddress$lat[i] <- as.numeric(result[2])
origAddress$geoAddress[i] <- as.character(result[3]
)
}
# Write a CSV file containing origAddress to the working directory
write.csv(origAddress, "geocoded.csv", row.names=FALSE)
我终于让代码工作了。
library(ggmap)
# Select the file from the file chooser
#fileToLoad <- file.choose(new = TRUE)
# Read in the CSV data and store it in a variable
register_google(key = "xxxxxxx")
origAddress <- read.csv("test.csv", stringsAsFactors = FALSE)
# Loop through the addresses to get the latitude and longitude of each address and add it to the
# origAddress data frame in new columns lat and lon
for(i in 1:nrow(origAddress)) {
result <- tryCatch(geocode(origAddress$addresses[i], output = "latlona", source = "google", inject = paste ("components = country =" , origAddress$country[i])),
warning = function(w) data.frame(lon = NA, lat = NA, address = NA))
origAddress$lon[i]`enter code here` <- as.numeric(result[1])
origAddress$lat[i] <- as.numeric(result[2])
origAddress$geoAddress[i] <- as.character(result[3]
)
}
# Write a CSV file containing origAddress to the working directory
write.csv(origAddress, "geocoded.csv", row.names=FALSE)
我试图过滤出来自某个国家的搜索结果,因为有时 API returns 随机纬度和经度。这是我的代码
library(ggmap)
# Select the file from the file chooser
#fileToLoad <- file.choose(new = TRUE)
# Read in the CSV data and store it in a variable
register_google(key = "xxxxxxx")
origAddress <- read.csv("test.csv", stringsAsFactors = FALSE)
# Loop through the addresses to get the latitude and longitude of each address and add it to the
# origAddress data frame in new columns lat and lon
for(i in 1:nrow(origAddress)) {
result <- tryCatch(geocode(origAddress$addresses[i], output = "latlona", source = "google"),
warning = function(w) data.frame(lon = NA, lat = NA, address = NA))
origAddress$lon[i] <- as.numeric(result[1])
origAddress$lat[i] <- as.numeric(result[2])
origAddress$geoAddress[i] <- as.character(result[3]
)
}
# Write a CSV file containing origAddress to the working directory
write.csv(origAddress, "geocoded.csv", row.names=FALSE)
我终于让代码工作了。
library(ggmap)
# Select the file from the file chooser
#fileToLoad <- file.choose(new = TRUE)
# Read in the CSV data and store it in a variable
register_google(key = "xxxxxxx")
origAddress <- read.csv("test.csv", stringsAsFactors = FALSE)
# Loop through the addresses to get the latitude and longitude of each address and add it to the
# origAddress data frame in new columns lat and lon
for(i in 1:nrow(origAddress)) {
result <- tryCatch(geocode(origAddress$addresses[i], output = "latlona", source = "google", inject = paste ("components = country =" , origAddress$country[i])),
warning = function(w) data.frame(lon = NA, lat = NA, address = NA))
origAddress$lon[i]`enter code here` <- as.numeric(result[1])
origAddress$lat[i] <- as.numeric(result[2])
origAddress$geoAddress[i] <- as.character(result[3]
)
}
# Write a CSV file containing origAddress to the working directory
write.csv(origAddress, "geocoded.csv", row.names=FALSE)