Я использовал клиент SodaPY для загрузки данных JSON по инициативе открытого правительства Нью-Йорка.SodaPY предоставляет код и следующие комментарии для использования своего клиента:
# First 2000 results, returned as JSON from API / converted to Python list of
# dictionaries by sodapy.
results = client.get("qiz3-axqb", limit=2000)
# Convert to pandas DataFrame
df = pd.DataFrame.from_records(results)
Когда я проверяю фрейм данных с помощью метода description (), я получаю сообщение об ошибке для функции 'location':
...
pandas/_libs/hashtable_func_helper.pxi in
pandas._libs.hashtable.value_count_object()
TypeError: unhashable type: 'dict'
Я пытаюсь проанализировать этот тип данных для пары координат ГИС.Вот первый элемент столбца:
{u'type': u'Point', u'coordinates': [-73.917305, 40.723854]}
Я пытался использовать 'enumerate', чтобы распаковать это, но, похоже, он не распаковывается, как я ожидал (я ищу, чтобы извлечь пару координатв конце каждого элемента dict):
In:
for (i, v) in enumerate(df['location'][:4]):
print (i,v)
Out:
(0, {u'type': u'Point', u'coordinates': [-73.917305, 40.723854]})
(1, {u'type': u'Point', u'coordinates': [-73.871315, 40.83228]})
(2, {u'type': u'Point', u'coordinates': [-73.93294, 40.70393]})
(3, {u'type': u'Point', u'coordinates': [-73.92817, 40.714207]})
Может кто-нибудь помочь мне понять, что происходит, и предложить питонскую технику для извлечения этой информации?TY!