НачатьНачать бесплатно

Преобразование вложенных JSON-структур

Одна из особенностей JSON-данных — возможность вложенности: значение атрибута само может состоять из пар «атрибут — значение». Такие вложенные данные удобнее использовать в распакованном виде — когда каждый атрибут становится отдельным столбцом таблицы. Подмодуль pandas.io.json содержит функцию json_normalize(), которая выполняет именно это.

Данные из API Yelp имеют вложенную структуру. Ваша задача — распаковать следующий уровень данных в столбцах coordinates и location.

pandas (как pd) и requests уже импортированы. Результаты вызова API сохранены в переменной response.

Это упражнение является частью курса

Эффективный импорт данных с pandas

Посмотреть курс

Инструкции к упражнению

  • Импортируйте функцию json_normalize() из подмодуля io.json библиотеки pandas.
  • Извлеките данные JSON из response и сохраните их в переменную data.
  • Используйте json_normalize(), чтобы распаковать данные о заведениях и загрузить их в таблицу cafes. Задайте для аргумента sep значение в виде знака подчёркивания (_) вместо точки.
  • Выведите первые строки data.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Load json_normalize()
____

# Isolate the JSON data from the API response
data = ____

# Flatten business data into a dataframe, replace separator
cafes = ____(data["businesses"],
             ____)

# View data
print(cafes.head())
Редактировать и запускать код