如何通过Pythonpandas读取多级JSON文件?

How to read multiple levels of JSON file through Python pandas?

我正在尝试读取一个 JSON 文件,其中的数据处于不同的级别,即顶部 --> 内部 --> 最内部。

我试过 pd.json_normalization,但我认为它不起作用。我附上了截图。因为最顶层是"WTFY_Combined",里面还有三层数据。因此,在级别之外,我需要读取以黄色标记的“OccuMa”,然后在“OccuMa”中,还有另一级别的数据“OccuCode”和“OccuDesc”。我需要在两个不同的数据框中读取这两个级别。 我知道一种方法是将这两个放在两个不同的 JSON 文件中,但实际上,我将有这样的多层次结构来阅读。

我正在尝试以下代码:

import pandas as pd
import json as js

with open ("filepath", "r") as f:
   data = js.loads(f.read())
df_flat = pd.json_normalize(data, record_path=['OccuCode'])
df_flat2 = pd.json_normalize(data, record_path=['OccuDesc'])

但是,它不起作用,它给出了 "keyerror",原因很明显,我无法将数据正确映射到数据帧中。

import pandas as pd
import json as js

with open ("filepath", "r") as f:
    json_data = js.loads(f.read())

json_data  = json_data['WTYF_Combined']['Extraction']['abc']['OccuMa']
df_data = pd.DataFrame(json_data)[['OccuCode','OccuDesc']]