Làm phẳng JSON lồng nhau
Một đặc điểm của dữ liệu JSON là có thể lồng nhau: giá trị của một thuộc tính có thể bao gồm các cặp thuộc tính–giá trị khác. Dữ liệu lồng nhau này sẽ hữu ích hơn khi được tách (unpack) hay “làm phẳng” thành các cột riêng trong dataframe. Tiểu mô-đun pandas.io.json có hàm json_normalize() giúp bạn làm đúng điều đó.
Dữ liệu phản hồi từ Yelp API là dữ liệu lồng nhau. Nhiệm vụ của bạn là làm phẳng thêm một cấp dữ liệu trong các cột coordinates và location.
pandas (viết tắt là pd) và requests đã được import. Kết quả của lệnh gọi API được lưu trong response.
Bài tập này là một phần của khóa học
Nạp dữ liệu gọn nhẹ với pandas
Hướng dẫn bài tập
- Nạp hàm
json_normalize()từ tiểu mô-đunio.jsoncủapandas. - Tách dữ liệu JSON từ
responsevà gán vàodata. - Dùng
json_normalize()để làm phẳng và nạp dữ liệu businesses vào một dataframe, đặt tên làcafes. Thiết lập đối sốsepđể dùng dấu gạch dưới (_) thay vì dấu chấm. - Hiển thị phần đầu của
data.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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())