import json
import pandas as pd
def flatten_json(d, parent_key="", results=[]):
"""
JSON 또는 딕셔너리 데이터를 평평한 구조로 변환하고, 키-값 쌍을 데이터프레임으로 저장합니다.
Args:
d (dict or json): JSON 또는 딕셔너리 데이터
parent_key (str): 상위 키 (재귀 호출 시 사용)
results (list): 데이터프레임에 저장될 결과 목록
Returns:
pandas.DataFrame: 키-값 쌍을 포함하는 데이터프레임
"""
if isinstance(d, dict):
for k, v in d.items():
new_key = parent_key + "." + k if parent_key else k
flatten_json(v, new_key, results)
results.append([new_key, v])
elif isinstance(d, list):
for item in d:
flatten_json(item, parent_key, results)
return pd.DataFrame(results, columns=["key", "value"])
반응형
'파이썬(Python)&판다스(Pandas)&Polars' 카테고리의 다른 글
[polars] 데이터프레임의 결측값을 리스트 형태로 추출하고 변환 (null_count, to_list) (0) | 2024.04.09 |
---|---|
[polars] 데이터 EDA 코드 만들기 (컬럼수, 행수, 결측값 등) (0) | 2024.04.09 |
[Python] mp4를 mp3로 변환하기 (moviepy) (0) | 2024.02.13 |
[Python&Pandas] 유사한 문자열을 매칭하는 파이썬 라이브러리(difflib) (0) | 2024.01.04 |
[Pandas] 두 개의 데이터프레임에서 특정 문자열이 포함된 행 제거하기(~, isin) (2) | 2024.01.04 |