Я пошел в API Google Адресов, как это было предложено в комментариях. Мне удалось создать учетную запись и получить ключ. Я написал функцию с именем encontrar
, которая в основном ищет места с ключевым словом в радиусе от центра. Я приказываю получить центр Я пошел на карты Google и нашел широту и долготу для этого момента. Это было очень быстро сделать вручную. Я не думаю, что мне нужно будет написать код для этого, но быть моим гостем. Поэтому, как только центр определен,
coordenadas<-c(-34.605424, -58.458499)
encontrar<-function(lugar,radius,keyword){
# radius in meters
#lugar is coordinates from google maps by hand
coor<-paste(lugar[1],lugar[2],sep=",")
baseurl<-"https://maps.googleapis.com/maps/api/place/nearbysearch/json?"
google_key<-c(" YOUR KEY HERE")
q<-paste(baseurl,"location=",coor,"&radius=",radius,"&types=food|restaurant&keyword=",keyword,"&key=",google_key, sep="")
print(q)
data1<-fromJSON(q)
lat_long<-data.frame(lat=data1$results$geometry$location$lat,long=data1$results$geometry$location$lng)
#print(data1)
sitios<-data1$results$name
df<-cbind(sitios,lat_long)
return(df)
}
encontrar(lugar = coordenadas,radius = 500,"pizzeria")
дает хороший кадр данных с мест в пределах 500 м
Стоит также отметить, что "&types=food|restaurant"
помощь в этом случае, потому что ключевое слово является «Пиццерия». Его следует изменить в другом случае.
[API Google Адресов] (https://developers.google.com/places/web-service/search) может предоставить вам необходимую информацию, но вам нужно написать сценарий, чтобы вызвать его из R . 'httr' и/или' jsonlite' будут полезны. – alistaire
@alistaire Я посмотрю на него и вернусь, если у меня возникнут трудности –