我正在尝试根据从foursquare API获得的场所类别对城市内的社区进行聚类。我设法使用foursquare API提取了场地数据,但是我不清楚在给定子类别的情况下如何获取给定场地的父类别。有谁有办法解决这个问题吗?
我知道我可以获取类别的层次树(https://developer.foursquare.com/docs/api/venues/categories),但是一旦有了该树,就不知道如何使用子类别来获取父类别。
(我正在使用python)
以下是用于提取场所数据的方法。
def getNearbyVenues(名称,纬度,经度,半径= 500,LIMIT = 100): places_list = [] 用于zip中的名称,纬度,经度(名称,纬度,经度): #print(名称)
# create the API request URL
url = 'https://api.foursquare.com/v2/venues/explore?&client_id={}&client_secret={}&v={}&ll={},{}&radius={}&limit={}'.format(
CLIENT_ID,
CLIENT_SECRET,
VERSION,
lat,
lng,
radius,
LIMIT)
# make the GET request
#results = requests.get(url).json()
results = requests.get(url).json()
#print(results)
results = results["response"]['groups'][0]['items']
# return only relevant information for each nearby venue
venues_list.append([(
name,
lat,
lng,
v['venue']['name'],
v['venue']['location']['lat'],
v['venue']['location']['lng'],
v['venue']['categories'][0]['name'],
v['venue']['id']) for v in results])
nearby_venues = pd.DataFrame([item for venue_list in venues_list for item in venue_list])
nearby_venues.columns = ['Neighbourhood',
'Neighbourhood Latitude',
'Neighbourhood Longitude',
'Venue',
'Venue Latitude',
'Venue Longitude',
'Venue Category',
'Venue ID']
return(nearby_venues)
谢谢!