Bắt đầu ngayBắt đầu miễn phí

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 coordinateslocation.

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

Xem khóa học

Hướng dẫn bài tập

  • Nạp hàm json_normalize() từ tiểu mô-đun io.json của pandas.
  • Tách dữ liệu JSON từ response và gán vào data.
  • 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())
Chỉnh sửa và Chạy Mã