ホームページ >バックエンド開発 >Python チュートリアル >ネストされた JSON を Pandas DataFrame に読み込み、データ構造を操作する方法
入れ子になった JSON を Pandas DataFrame として読み取る
入れ子になったオブジェクトを含む JSON ファイルを pandas DataFrame として読み取るには、強力な json_normalize を利用できます。関数。この関数を使用すると、ネストされたデータ構造を表形式に平坦化し、データの操作と分析が容易になります。
配列を列に展開
サンプル JSON には次のものが含まれます場所の配列。この配列を JSON 列として保持する代わりに、それを別の列に拡張して、データに対するより良い洞察を得ることができます。 json_normalize は、meta パラメーターを使用してこれを実現できます。どの列のネストを解除し、DataFrame の通常の列として含めるかを指定します。
<code class="python">import json with open('myJson.json') as data_file: data = json.load(data_file) df = pd.json_normalize(data, 'locations', ['date', 'number', 'name'], record_prefix='locations_', meta=['depTime', 'arrTime'])</code>
このコードは、location 配列から派生した depTime と arrTime の追加列を持つ DataFrame を作成します。
場所列に参加
場所列に参加したいとおっしゃいました。これは、次のコードを使用して実行できます。
<code class="python">df['locations'] = df.locations.apply(','.join)</code>
これにより、場所が単一のカンマ区切り文字列に連結されます。
複数の JSON オブジェクトの処理
JSON ファイルに複数の JSON オブジェクト (1 行に 1 つ) が含まれている場合は、次のコードを使用できます。
<code class="python">import pandas as pd # Read the JSON file into a list of dictionaries with open('myJson.json') as f: data = [json.loads(line) for line in f] # Convert the list of dictionaries to a DataFrame df = pd.DataFrame(data)</code>
その後、上で説明したのと同じ手法を適用して、ネストされたデータを正規化して結合できます。
json_normalize を活用すると、ネストされた JSON データを pandas DataFrame に効率的に読み取り、平坦化、操作でき、データ分析機能が強化されます。
以上がネストされた JSON を Pandas DataFrame に読み込み、データ構造を操作する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。