Pythonのデータ分析ライブラリであるPandasには、json_normalize
という便利な関数があります。この関数は、ネストされたJSONデータをフラットなテーブル形式に変換するためのものです。
例えば、以下のようなネストされたJSONデータがあったとします。
log_data_list = [
{
'id': 1,
'name': 'john',
'equipment_status': [
{
'equipment_id': 1,
'attack': 1000,
'defense': 1200,
'speed': 800,
'luck': 500,
},
{
'equipment_id': 2,
'attack': 1100,
'defense': 1300,
'speed': 900,
'luck': 600,
}
]
},
...
]
このデータをjson_normalize
関数を使ってフラット化することができます。
import pandas as pd
from pandas.io.json import json_normalize
df = json_normalize(data=log_data_list, record_path='equipment_status', meta=['id', 'name'])
このコードを実行すると、equipment_status
内の各項目が個別の列として展開され、id
とname
の情報が保持された新しいデータフレームが生成されます。
このように、json_normalize
関数は、ネストされたJSONデータを効率的に扱うための強力なツールです。これにより、大量のJSONデータを分析しやすい形に変換し、データ分析の幅を広げることができます。.