깊게 중첩된 데이터 처리하기
이전 연습 문제에서는 한 단계만 중첩된 데이터를 평탄화했어요. 이번에는 더 깊게 중첩된 데이터를 풀어 보겠습니다.
Yelp API 응답의 categories 속성은 객체의 리스트를 담고 있어요. 이 데이터를 평탄화하려면, json_normalize()의 인자를 사용해 categories까지의 경로를 지정하고, 데이터프레임에 포함할 다른 속성들도 선택해야 합니다. 또한 열 선택을 쉽게 하도록 구분자도 바꾸고, 열 이름 충돌을 피하기 위해 다른 속성에는 접두사도 붙여야 해요. 단계별로 진행해 볼게요.
pandas(별칭 pd)와 json_normalize()는 이미 임포트되어 있습니다. NYC의 카페에 대한 JSON 형식 Yelp 데이터는 data에 저장되어 있어요.
이 연습은 강의의 일부입니다
pandas로 빠르고 간편한 데이터 적재
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Flatten businesses records and set underscore separators
flat_cafes = ____(data["businesses"],
____)
# View the data
print(flat_cafes.head())